You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by gi...@apache.org on 2025/01/22 14:47:38 UTC
(hbase-site) branch asf-site updated: Published site at 8ce58c8ba1b23295651d45005e755c02b5476acc.
This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/hbase-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new ebfa5ba13be Published site at 8ce58c8ba1b23295651d45005e755c02b5476acc.
ebfa5ba13be is described below
commit ebfa5ba13be80717b3ebc498ad065ed3e78391dc
Author: jenkins <bu...@apache.org>
AuthorDate: Wed Jan 22 14:47:14 2025 +0000
Published site at 8ce58c8ba1b23295651d45005e755c02b5476acc.
---
acid-semantics.html | 2 +-
apache_hbase_reference_guide.pdf | 4 +-
apidocs/index-all.html | 32 +-
apidocs/member-search-index.js | 2 +-
book.html | 2 +-
bulk-loads.html | 2 +-
checkstyle-aggregate.html | 20 +-
checkstyle.rss | 446 ++---
coc.html | 2 +-
dependencies.html | 2 +-
dependency-convergence.html | 2 +-
dependency-info.html | 2 +-
dependency-management.html | 2 +-
devapidocs/allclasses-index.html | 1886 ++++++++++----------
devapidocs/index-all.html | 37 +-
devapidocs/member-search-index.js | 2 +-
.../master/balancer/CPRequestCostFunction.html | 2 +-
...eLoadBalancer.CacheAwareCandidateGenerator.html | 10 +-
...heAwareLoadBalancer.CacheAwareCostFunction.html | 32 +-
...ancer.CacheAwareRegionSkewnessCostFunction.html | 26 +-
...ancer.CacheAwareSkewnessCandidateGenerator.html | 8 +-
.../master/balancer/CacheAwareLoadBalancer.html | 19 +-
.../balancer/CostFromRegionLoadAsRateFunction.html | 2 +-
.../balancer/CostFromRegionLoadFunction.html | 2 +-
.../hadoop/hbase/master/balancer/CostFunction.html | 32 +-
...edStochasticBalancer.FavoredNodeLoadPicker.html | 12 +-
...ochasticBalancer.FavoredNodeLocalityPicker.html | 10 +-
.../master/balancer/FavoredStochasticBalancer.html | 43 +-
.../HeterogeneousRegionCountCostFunction.html | 2 +-
.../master/balancer/LocalityBasedCostFunction.html | 32 +-
.../master/balancer/MemStoreSizeCostFunction.html | 2 +-
.../hbase/master/balancer/MoveCostFunction.html | 2 +-
.../PrimaryRegionCountSkewCostFunction.html | 2 +-
.../master/balancer/RackLocalityCostFunction.html | 2 +-
.../master/balancer/ReadRequestCostFunction.html | 2 +-
.../balancer/RegionCountSkewCostFunction.html | 26 +-
.../RegionReplicaGroupingCostFunction.html | 30 +-
.../balancer/RegionReplicaHostCostFunction.html | 2 +-
.../balancer/RegionReplicaRackCostFunction.html | 2 +-
.../balancer/ServerLocalityCostFunction.html | 2 +-
.../StochasticLoadBalancer.GeneratorType.html | 271 ---
.../master/balancer/StochasticLoadBalancer.html | 283 +--
.../master/balancer/StoreFileCostFunction.html | 2 +-
.../master/balancer/TableSkewCostFunction.html | 2 +-
.../master/balancer/WriteRequestCostFunction.html | 2 +-
.../master/balancer/class-use/BalanceAction.html | 38 +-
.../balancer/class-use/BalancerClusterState.html | 2 +-
.../balancer/class-use/CandidateGenerator.html | 67 +-
.../StochasticLoadBalancer.GeneratorType.html | 95 -
.../hbase/master/balancer/package-summary.html | 18 +-
.../hadoop/hbase/master/balancer/package-tree.html | 1 -
.../hadoop/hbase/master/balancer/package-use.html | 2 -
.../apache/hadoop/hbase/util/class-use/Pair.html | 9 +-
devapidocs/overview-tree.html | 1 -
...eLoadBalancer.CacheAwareCandidateGenerator.html | 830 ++++-----
...heAwareLoadBalancer.CacheAwareCostFunction.html | 830 ++++-----
...ancer.CacheAwareRegionSkewnessCostFunction.html | 830 ++++-----
...ancer.CacheAwareSkewnessCandidateGenerator.html | 830 ++++-----
...cheAwareLoadBalancer.GeneratorFunctionType.html | 830 ++++-----
.../master/balancer/CacheAwareLoadBalancer.html | 830 ++++-----
.../hadoop/hbase/master/balancer/CostFunction.html | 201 +--
...edStochasticBalancer.FavoredNodeLoadPicker.html | 1215 ++++++-------
...ochasticBalancer.FavoredNodeLocalityPicker.html | 1215 ++++++-------
.../master/balancer/FavoredStochasticBalancer.html | 1215 ++++++-------
.../master/balancer/LocalityBasedCostFunction.html | 153 +-
.../balancer/RegionCountSkewCostFunction.html | 97 +-
.../RegionReplicaGroupingCostFunction.html | 161 +-
.../StochasticLoadBalancer.GeneratorType.html | 910 ----------
.../master/balancer/StochasticLoadBalancer.html | 1631 +++++++++--------
devapidocs/type-search-index.js | 2 +-
downloads.html | 2 +-
export_control.html | 2 +-
index.html | 2 +-
issue-management.html | 2 +-
licenses.html | 2 +-
mailing-lists.html | 2 +-
metrics.html | 2 +-
old_news.html | 2 +-
plugin-management.html | 2 +-
plugins.html | 2 +-
poweredbyhbase.html | 2 +-
project-info.html | 2 +-
project-reports.html | 2 +-
pseudo-distributed.html | 2 +-
replication.html | 2 +-
resources.html | 2 +-
scm.html | 2 +-
sponsors.html | 2 +-
summary.html | 2 +-
supportingprojects.html | 2 +-
team.html | 2 +-
testapidocs/index-all.html | 92 +-
testapidocs/member-search-index.js | 2 +-
testdevapidocs/index-all.html | 72 +-
testdevapidocs/member-search-index.js | 2 +-
.../hbase/master/balancer/DummyCostFunction.html | 6 +-
.../LoadOnlyFavoredStochasticBalancer.html | 9 +-
.../TestBalancerRejection.MockCostFunction.html | 6 +-
...terogeneousCost.StochasticLoadTestBalancer.html | 13 +-
.../LoadOnlyFavoredStochasticBalancer.html | 17 +-
.../TestStochasticLoadBalancer.MockCluster.html | 2 +-
.../balancer/TestStochasticLoadBalancer.html | 2 +-
.../TestStochasticLoadBalancerBalanceCluster.html | 2 +-
...rRegionReplicaWithRacks.ForTestRackManager.html | 2 +-
...ochasticLoadBalancerRegionReplicaWithRacks.html | 2 +-
105 files changed, 7205 insertions(+), 8388 deletions(-)
diff --git a/acid-semantics.html b/acid-semantics.html
index 9097bfb6f64..4e05553b127 100644
--- a/acid-semantics.html
+++ b/acid-semantics.html
@@ -468,7 +468,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 c5ba1685df4..557c0a033bb 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
@@ -5,8 +5,8 @@
/Author (Apache HBase Team)
/Creator (Asciidoctor PDF 2.0.6, based on Prawn 2.4.0)
/Producer (Apache HBase Team)
-/ModDate (D:20250119142956+00'00')
-/CreationDate (D:20250119144324+00'00')
+/ModDate (D:20250122143054+00'00')
+/CreationDate (D:20250122144430+00'00')
>>
endobj
2 0 obj
diff --git a/apidocs/index-all.html b/apidocs/index-all.html
index d8c7557c216..a71302e304a 100644
--- a/apidocs/index-all.html
+++ b/apidocs/index-all.html
@@ -1488,9 +1488,9 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt>affixShutdownHook(Thread, int) - Static method in class org.apache.hadoop.hbase.util.ShutdownHookManager</dt>
<dd> </dd>
-<dt>afterDecodingKeyValue(DataInputStream, ByteBuffer, HFileBlockDefaultDecodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>afterDecodingKeyValue(DataInputStream, ByteBuffer, HFileBlockDefaultDecodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
-<dt>afterEncodingKeyValue(ExtendedCell, DataOutputStream, HFileBlockDefaultEncodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>afterEncodingKeyValue(ExtendedCell, DataOutputStream, HFileBlockDefaultEncodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd>
<div class="block">Returns unencoded size added</div>
</dd>
@@ -5096,7 +5096,7 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt>call(O) - Method in class org.apache.hadoop.hbase.coprocessor.CoprocessorHost.ObserverOperationWithResult</dt>
<dd> </dd>
-<dt>call(AbstractRpcBasedConnectionRegistry.Callable<T>, Predicate<T>, String) - Method in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>call(AbstractRpcBasedConnectionRegistry.Callable<T>, Predicate<T>, String) - Method in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd> </dd>
<dt>call(HBaseRpcController, AdminProtos.AdminService.Interface) - Method in interface org.apache.hadoop.hbase.client.AsyncAdminRequestRetryingCaller.Callable</dt>
<dd> </dd>
@@ -7144,7 +7144,7 @@ loadScripts(document, 'script');</script>
</dd>
<dt>close() - Method in class org.apache.hadoop.hbase.chaos.ChaosAgent</dt>
<dd> </dd>
-<dt>close() - Method in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>close() - Method in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd> </dd>
<dt>close() - Method in interface org.apache.hadoop.hbase.client.Admin</dt>
<dd> </dd>
@@ -8509,11 +8509,11 @@ loadScripts(document, 'script');</script>
<dd>
<div class="block">Compares the family and qualifier part of the cell</div>
</dd>
-<dt>compareCommonFamilyPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>compareCommonFamilyPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
-<dt>compareCommonQualifierPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>compareCommonQualifierPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
-<dt>compareCommonRowPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>compareCommonRowPrefix(Cell, Cell, int) - Static method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd>
<div class="block">common prefixes</div>
</dd>
@@ -12990,7 +12990,7 @@ loadScripts(document, 'script');</script>
<dd>
<div class="block">Decode an <code>int8</code> value.</div>
</dd>
-<dt>decodeKeyValues(DataInputStream, HFileBlockDecodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>decodeKeyValues(DataInputStream, HFileBlockDecodingContext) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
<dt>decodeKeyValues(DataInputStream, HFileBlockDecodingContext) - Method in interface org.apache.hadoop.hbase.io.encoding.DataBlockEncoder</dt>
<dd>
@@ -15824,7 +15824,7 @@ loadScripts(document, 'script');</script>
<dd>
<div class="block">Separator used to demarcate the encodedName in a region name in the new format.</div>
</dd>
-<dt>encode(ExtendedCell, HFileBlockEncodingContext, DataOutputStream) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>encode(ExtendedCell, HFileBlockEncodingContext, DataOutputStream) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
<dt>encode(ExtendedCell, HFileBlockEncodingContext, DataOutputStream) - Method in interface org.apache.hadoop.hbase.io.encoding.DataBlockEncoder</dt>
<dd>
@@ -16238,7 +16238,7 @@ loadScripts(document, 'script');</script>
</dd>
<dt>END_TIME_KEY - Static variable in class org.apache.hadoop.hbase.mapreduce.WALInputFormat</dt>
<dd> </dd>
-<dt>endBlockEncoding(HFileBlockEncodingContext, DataOutputStream, byte[]) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>endBlockEncoding(HFileBlockEncodingContext, DataOutputStream, byte[]) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
<dt>endBlockEncoding(HFileBlockEncodingContext, DataOutputStream, byte[]) - Method in interface org.apache.hadoop.hbase.io.encoding.DataBlockEncoder</dt>
<dd>
@@ -16349,7 +16349,7 @@ loadScripts(document, 'script');</script>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
<div class="block">Make sure that at least the specified number of region servers are running</div>
</dd>
-<dt>ensureSpace(ByteBuffer, int) - Static method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>ensureSpace(ByteBuffer, int) - Static method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd>
<div class="block">Asserts that there is at least the given amount of unfilled space remaining in the given
buffer.</div>
@@ -19928,7 +19928,7 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt>getActiveLogFiles() - Static method in class org.apache.hadoop.hbase.logging.Log4jUtils</dt>
<dd> </dd>
-<dt>getActiveMaster() - Method in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>getActiveMaster() - Method in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd> </dd>
<dt>getActiveMaster() - Method in interface org.apache.hadoop.hbase.client.ConnectionRegistry</dt>
<dd>
@@ -21714,7 +21714,7 @@ loadScripts(document, 'script');</script>
<dd>
<div class="block">Returns the cluster definition</div>
</dd>
-<dt>getClusterId() - Method in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>getClusterId() - Method in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd> </dd>
<dt>getClusterId() - Method in interface org.apache.hadoop.hbase.client.Connection</dt>
<dd>
@@ -26860,7 +26860,7 @@ loadScripts(document, 'script');</script>
</dd>
<dt>getMetaRegionLocationCache() - Method in class org.apache.hadoop.hbase.HBaseServerBase</dt>
<dd> </dd>
-<dt>getMetaRegionLocations() - Method in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>getMetaRegionLocations() - Method in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd> </dd>
<dt>getMetaRegionLocations() - Method in interface org.apache.hadoop.hbase.client.ConnectionRegistry</dt>
<dd>
@@ -37333,7 +37333,7 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt>HEDGED_READS_DESC - Static variable in interface org.apache.hadoop.hbase.regionserver.MetricsRegionServerSource</dt>
<dd> </dd>
-<dt>HEDGED_REQS_FANOUT_DEFAULT - Static variable in class org.apache.hadoop.hbase.client.MasterRegistry</dt>
+<dt>HEDGED_REQS_FANOUT_DEFAULT - Static variable in class org.apache.hadoop.hbase.client.RpcConnectionRegistry</dt>
<dd>
<div class="block">Default value for the fan out of hedged requests.</div>
</dd>
@@ -67148,7 +67148,7 @@ service.</div>
</dd>
<dt>START_TIME_KEY - Static variable in class org.apache.hadoop.hbase.mapreduce.WALInputFormat</dt>
<dd> </dd>
-<dt>startBlockEncoding(HFileBlockEncodingContext, DataOutputStream) - Method in class org.apache.hadoop.hbase.io.encoding.PrefixKeyDeltaEncoder</dt>
+<dt>startBlockEncoding(HFileBlockEncodingContext, DataOutputStream) - Method in class org.apache.hadoop.hbase.io.encoding.DiffKeyDeltaEncoder</dt>
<dd> </dd>
<dt>startBlockEncoding(HFileBlockEncodingContext, DataOutputStream) - Method in class org.apache.hadoop.hbase.io.encoding.CopyKeyDataBlockEncoder</dt>
<dd> </dd>
diff --git a/apidocs/member-search-index.js b/apidocs/member-search-index.js
index f6a762264a4..a134e5ebcc9 100644
--- a/apidocs/member-search-index.js
+++ b/apidocs/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"org.apache.hadoop.hbase.filter","c":"ParseConstants","l":"A"},{"p":"org.apache.hadoop.hbase.master","c":"RegionState.State","l":"ABNORMALLY_CLOSED"},{"p":"org.apache.hadoop.hbase.coprocessor","c":"CoprocessorHost","l":"ABORT_ON_ERROR_KEY"},{"p":"org.apache.hadoop.hdfs","c":"DummyDFSOutputStream","l":"abort()"},{"p":"org.apache.hadoop.hbase","c":"Abortable","l":"abort(String)","u":"abort(java.lang.String)"},{"p":"org.apache.hadoop.hbase","c":"Abortable","l":"abo [...]
\ No newline at end of file
+memberSearchIndex = [{"p":"org.apache.hadoop.hbase.filter","c":"ParseConstants","l":"A"},{"p":"org.apache.hadoop.hbase.master","c":"RegionState.State","l":"ABNORMALLY_CLOSED"},{"p":"org.apache.hadoop.hbase.coprocessor","c":"CoprocessorHost","l":"ABORT_ON_ERROR_KEY"},{"p":"org.apache.hadoop.hdfs","c":"DummyDFSOutputStream","l":"abort()"},{"p":"org.apache.hadoop.hbase","c":"Abortable","l":"abort(String)","u":"abort(java.lang.String)"},{"p":"org.apache.hadoop.hbase","c":"Abortable","l":"abo [...]
\ No newline at end of file
diff --git a/book.html b/book.html
index ca1bbcbddb1..412e8de6560 100644
--- a/book.html
+++ b/book.html
@@ -49780,7 +49780,7 @@ org/apache/hadoop/hbase/security/access/AccessControlClient.revoke:(Lorg/apache/
<div id="footer">
<div id="footer-text">
Version 4.0.0-alpha-1-SNAPSHOT<br>
-Last updated 2025-01-19 14:29:56 UTC
+Last updated 2025-01-22 14:30:54 UTC
</div>
</div>
<script type="text/x-mathjax-config">
diff --git a/bulk-loads.html b/bulk-loads.html
index f71d696b1b5..bcfc4d29072 100644
--- a/bulk-loads.html
+++ b/bulk-loads.html
@@ -184,7 +184,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 412c4f0e428..b2a7d3f4b8f 100644
--- a/checkstyle-aggregate.html
+++ b/checkstyle-aggregate.html
@@ -3224,7 +3224,7 @@
<tr class="a">
<td>annotation</td>
<td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_annotation.html#MissingDeprecated">MissingDeprecated</a></td>
-<td>12</td>
+<td>9</td>
<td><figure><img src="images/icon_error_sml.gif" alt="" /></figure> Error</td></tr>
<tr class="b">
<td>blocks</td>
@@ -3299,7 +3299,7 @@
<tr class="b">
<td>javadoc</td>
<td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_javadoc.html#NonEmptyAtclauseDescription">NonEmptyAtclauseDescription</a></td>
-<td>46</td>
+<td>49</td>
<td><figure><img src="images/icon_error_sml.gif" alt="" /></figure> Error</td></tr>
<tr class="a">
<td>misc</td>
@@ -4676,8 +4676,8 @@
<th>Line</th></tr>
<tr class="a">
<td><figure><img src="images/icon_error_sml.gif" alt="" /></figure> Error</td>
-<td>annotation</td>
-<td>MissingDeprecated</td>
+<td>javadoc</td>
+<td>NonEmptyAtclauseDescription</td>
<td>Javadoc comment at column 20 has parse error. Missed HTML close tag 'path-to-conf'. Sometimes it means that close tag missed for one of previous tags.</td>
<td>172</td></tr></table></section><section>
<h3 id="org.apache.hadoop.hbase.client.Action.java">org/apache/hadoop/hbase/client/Action.java</h3>
@@ -9736,8 +9736,8 @@
<th>Line</th></tr>
<tr class="b">
<td><figure><img src="images/icon_error_sml.gif" alt="" /></figure> Error</td>
-<td>annotation</td>
-<td>MissingDeprecated</td>
+<td>javadoc</td>
+<td>NonEmptyAtclauseDescription</td>
<td>Javadoc comment at column 14 has parse error. Details: mismatched input ':' expecting <EOF> while parsing JAVADOC</td>
<td>46</td></tr></table></section><section>
<h3 id="org.apache.hadoop.hbase.mapreduce.SimpleTotalOrderPartitioner.java">org/apache/hadoop/hbase/mapreduce/SimpleTotalOrderPartitioner.java</h3>
@@ -10649,7 +10649,7 @@
<td>sizes</td>
<td>LineLength</td>
<td>Line is longer than 100 characters (found 102).</td>
-<td>468</td></tr></table></section><section>
+<td>470</td></tr></table></section><section>
<h3 id="org.apache.hadoop.hbase.master.balancer.ClusterLoadState.java">org/apache/hadoop/hbase/master/balancer/ClusterLoadState.java</h3>
<table border="0" class="table table-striped">
<tr class="b">
@@ -16212,8 +16212,8 @@
<th>Line</th></tr>
<tr class="a">
<td><figure><img src="images/icon_error_sml.gif" alt="" /></figure> Error</td>
-<td>annotation</td>
-<td>MissingDeprecated</td>
+<td>javadoc</td>
+<td>NonEmptyAtclauseDescription</td>
<td>Javadoc comment at column 20 has parse error. Missed HTML close tag 'SpanData'. Sometimes it means that close tag missed for one of previous tags.</td>
<td>65</td></tr></table></section><section>
<h3 id="org.apache.hadoop.hbase.util.AbstractHBaseTool.java">org/apache/hadoop/hbase/util/AbstractHBaseTool.java</h3>
@@ -18444,7 +18444,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 0dfa67798d5..bace8519996 100644
--- a/checkstyle.rss
+++ b/checkstyle.rss
@@ -704,7 +704,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.RegionVisualizer.java">org/apache/hadoop/hbase/master/http/RegionVisualizer.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.SplitWALProcedure.java">org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.java</a>
</td>
<td>
0
@@ -718,7 +718,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.SplitWALProcedure.java">org/apache/hadoop/hbase/master/procedure/SplitWALProcedure.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.RegionVisualizer.java">org/apache/hadoop/hbase/master/http/RegionVisualizer.java</a>
</td>
<td>
0
@@ -858,7 +858,7 @@ under the License.
</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
@@ -872,7 +872,7 @@ under the License.
</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
@@ -1362,7 +1362,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TableSnapshotScanner.java">org/apache/hadoop/hbase/client/TableSnapshotScanner.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.ipc.QueueBalancer.java">org/apache/hadoop/hbase/ipc/QueueBalancer.java</a>
</td>
<td>
0
@@ -1376,7 +1376,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.ipc.QueueBalancer.java">org/apache/hadoop/hbase/ipc/QueueBalancer.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TableSnapshotScanner.java">org/apache/hadoop/hbase/client/TableSnapshotScanner.java</a>
</td>
<td>
0
@@ -2706,7 +2706,7 @@ under the License.
</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
@@ -2720,7 +2720,7 @@ under the License.
</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
@@ -3140,7 +3140,7 @@ under the License.
</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
@@ -3154,7 +3154,7 @@ under the License.
</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
@@ -3518,7 +3518,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestRpcConnectionRegistry.java">org/apache/hadoop/hbase/client/TestRpcConnectionRegistry.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestAtomicOperation.java">org/apache/hadoop/hbase/regionserver/TestAtomicOperation.java</a>
</td>
<td>
0
@@ -3527,12 +3527,12 @@ under the License.
0
</td>
<td>
- 0
+ 4
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestAtomicOperation.java">org/apache/hadoop/hbase/regionserver/TestAtomicOperation.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestRpcConnectionRegistry.java">org/apache/hadoop/hbase/client/TestRpcConnectionRegistry.java</a>
</td>
<td>
0
@@ -3541,7 +3541,7 @@ under the License.
0
</td>
<td>
- 4
+ 0
</td>
</tr>
<tr>
@@ -4666,7 +4666,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.master.TestReplicationLogCleaner.java">org/apache/hadoop/hbase/replication/master/TestReplicationLogCleaner.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestSyncReplicationActiveAsyncFSWAL.java">org/apache/hadoop/hbase/replication/TestSyncReplicationActiveAsyncFSWAL.java</a>
</td>
<td>
0
@@ -4680,7 +4680,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestSyncReplicationActiveAsyncFSWAL.java">org/apache/hadoop/hbase/replication/TestSyncReplicationActiveAsyncFSWAL.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.master.TestReplicationLogCleaner.java">org/apache/hadoop/hbase/replication/master/TestReplicationLogCleaner.java</a>
</td>
<td>
0
@@ -5478,7 +5478,7 @@ under the License.
</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>
+ <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
@@ -5487,12 +5487,12 @@ under the License.
0
</td>
<td>
- 6
+ 0
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterChoreScheduled.java">org/apache/hadoop/hbase/master/TestMasterChoreScheduled.java</a>
+ <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>
0
@@ -5501,12 +5501,12 @@ under the License.
0
</td>
<td>
- 0
+ 6
</td>
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterChoreScheduled.java">org/apache/hadoop/hbase/master/TestMasterChoreScheduled.java</a>
</td>
<td>
0
@@ -7662,7 +7662,7 @@ under the License.
</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>
+ <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
@@ -7676,7 +7676,7 @@ under the License.
</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>
+ <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>
0
@@ -8124,7 +8124,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncAdminMasterSwitch.java">org/apache/hadoop/hbase/client/TestAsyncAdminMasterSwitch.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.AbstractTestMutualTls.java">org/apache/hadoop/hbase/security/AbstractTestMutualTls.java</a>
</td>
<td>
0
@@ -8138,7 +8138,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.security.AbstractTestMutualTls.java">org/apache/hadoop/hbase/security/AbstractTestMutualTls.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncAdminMasterSwitch.java">org/apache/hadoop/hbase/client/TestAsyncAdminMasterSwitch.java</a>
</td>
<td>
0
@@ -8894,7 +8894,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.replication.TestSyncReplicationReplayWALManager.java">org/apache/hadoop/hbase/master/replication/TestSyncReplicationReplayWALManager.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.cleaner.TestCleanerClearHFiles.java">org/apache/hadoop/hbase/master/cleaner/TestCleanerClearHFiles.java</a>
</td>
<td>
0
@@ -8908,7 +8908,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.cleaner.TestCleanerClearHFiles.java">org/apache/hadoop/hbase/master/cleaner/TestCleanerClearHFiles.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.replication.TestSyncReplicationReplayWALManager.java">org/apache/hadoop/hbase/master/replication/TestSyncReplicationReplayWALManager.java</a>
</td>
<td>
0
@@ -9510,7 +9510,7 @@ under the License.
</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>
+ <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
@@ -9519,12 +9519,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</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>
+ <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>
0
@@ -9533,7 +9533,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
@@ -9734,7 +9734,7 @@ under the License.
</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>
+ <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
@@ -9748,7 +9748,7 @@ under the License.
</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>
+ <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>
0
@@ -11554,7 +11554,7 @@ under the License.
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMetaTableAccessor.java">org/apache/hadoop/hbase/TestMetaTableAccessor.java</a>
</td>
<td>
0
@@ -11563,12 +11563,12 @@ under the License.
0
</td>
<td>
- 0
+ 2
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMetaTableAccessor.java">org/apache/hadoop/hbase/TestMetaTableAccessor.java</a>
+ <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>
0
@@ -11577,7 +11577,7 @@ under the License.
0
</td>
<td>
- 2
+ 0
</td>
</tr>
<tr>
@@ -11722,7 +11722,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.protobuf.ReplicationProtobufUtil.java">org/apache/hadoop/hbase/protobuf/ReplicationProtobufUtil.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.SnapshotProcedure.java">org/apache/hadoop/hbase/master/procedure/SnapshotProcedure.java</a>
</td>
<td>
0
@@ -11731,12 +11731,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.SnapshotProcedure.java">org/apache/hadoop/hbase/master/procedure/SnapshotProcedure.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.protobuf.ReplicationProtobufUtil.java">org/apache/hadoop/hbase/protobuf/ReplicationProtobufUtil.java</a>
</td>
<td>
0
@@ -11745,12 +11745,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</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>
+ <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
@@ -11764,7 +11764,7 @@ under the License.
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestMultiVersions.java">org/apache/hadoop/hbase/TestMultiVersions.java</a>
</td>
<td>
0
@@ -11890,7 +11890,7 @@ under the License.
</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
@@ -11904,7 +11904,7 @@ under the License.
</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
@@ -12226,7 +12226,7 @@ under the License.
</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
@@ -12240,7 +12240,7 @@ under the License.
</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
@@ -12758,7 +12758,7 @@ under the License.
</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
@@ -12772,7 +12772,7 @@ under the License.
</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
@@ -12870,7 +12870,7 @@ under the License.
</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>
+ <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
@@ -12879,12 +12879,12 @@ under the License.
0
</td>
<td>
- 4
+ 0
</td>
</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>
+ <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>
0
@@ -12893,7 +12893,7 @@ under the License.
0
</td>
<td>
- 0
+ 4
</td>
</tr>
<tr>
@@ -13626,7 +13626,7 @@ under the License.
</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>
+ <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
@@ -13635,12 +13635,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</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>
+ <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>
0
@@ -13649,7 +13649,7 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
@@ -13990,7 +13990,7 @@ under the License.
</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>
+ <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
@@ -13999,12 +13999,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</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>
+ <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>
0
@@ -14013,7 +14013,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
@@ -14466,7 +14466,7 @@ under the License.
</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>
+ <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
@@ -14480,7 +14480,7 @@ under the License.
</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>
+ <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>
0
@@ -15404,7 +15404,7 @@ under the License.
</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
@@ -15418,7 +15418,7 @@ under the License.
</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
@@ -16986,7 +16986,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestFlushTableProcedure.java">org/apache/hadoop/hbase/master/procedure/TestFlushTableProcedure.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestQuotaUserOverride.java">org/apache/hadoop/hbase/quotas/TestQuotaUserOverride.java</a>
</td>
<td>
0
@@ -17000,7 +17000,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.TestQuotaUserOverride.java">org/apache/hadoop/hbase/quotas/TestQuotaUserOverride.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestFlushTableProcedure.java">org/apache/hadoop/hbase/master/procedure/TestFlushTableProcedure.java</a>
</td>
<td>
0
@@ -19212,7 +19212,7 @@ under the License.
</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>
+ <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
@@ -19226,7 +19226,7 @@ under the License.
</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>
+ <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>
0
@@ -19758,7 +19758,7 @@ under the License.
</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
@@ -19772,7 +19772,7 @@ under the License.
</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
@@ -20248,7 +20248,7 @@ under the License.
</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>
+ <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
@@ -20257,12 +20257,12 @@ under the License.
0
</td>
<td>
- 0
+ 5
</td>
</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>
+ <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>
0
@@ -20271,7 +20271,7 @@ under the License.
0
</td>
<td>
- 5
+ 0
</td>
</tr>
<tr>
@@ -20486,7 +20486,7 @@ under the License.
</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
@@ -20500,7 +20500,7 @@ under the License.
</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
@@ -22334,7 +22334,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TracedAdvancedScanResultConsumer.java">org/apache/hadoop/hbase/client/TracedAdvancedScanResultConsumer.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterTransitions.java">org/apache/hadoop/hbase/master/TestMasterTransitions.java</a>
</td>
<td>
0
@@ -22343,12 +22343,12 @@ under the License.
0
</td>
<td>
- 0
+ 2
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.TestMasterTransitions.java">org/apache/hadoop/hbase/master/TestMasterTransitions.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TracedAdvancedScanResultConsumer.java">org/apache/hadoop/hbase/client/TracedAdvancedScanResultConsumer.java</a>
</td>
<td>
0
@@ -22357,7 +22357,7 @@ under the License.
0
</td>
<td>
- 2
+ 0
</td>
</tr>
<tr>
@@ -22964,7 +22964,7 @@ under the License.
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestNodeHealthCheckChore.java">org/apache/hadoop/hbase/TestNodeHealthCheckChore.java</a>
</td>
<td>
0
@@ -22973,12 +22973,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestNodeHealthCheckChore.java">org/apache/hadoop/hbase/TestNodeHealthCheckChore.java</a>
+ <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>
0
@@ -22987,7 +22987,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
@@ -23356,7 +23356,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.compress.HFileTestBase.java">org/apache/hadoop/hbase/io/compress/HFileTestBase.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestDataBlockEncodingTool.java">org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.java</a>
</td>
<td>
0
@@ -23370,7 +23370,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestDataBlockEncodingTool.java">org/apache/hadoop/hbase/regionserver/TestDataBlockEncodingTool.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.compress.HFileTestBase.java">org/apache/hadoop/hbase/io/compress/HFileTestBase.java</a>
</td>
<td>
0
@@ -27542,7 +27542,7 @@ under the License.
</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>
+ <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
@@ -27551,12 +27551,12 @@ under the License.
0
</td>
<td>
- 0
+ 3
</td>
</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>
+ <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>
0
@@ -27565,7 +27565,7 @@ under the License.
0
</td>
<td>
- 3
+ 0
</td>
</tr>
<tr>
@@ -28382,7 +28382,7 @@ under the License.
</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>
+ <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
@@ -28391,12 +28391,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</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>
+ <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>
0
@@ -28405,7 +28405,7 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
@@ -28522,7 +28522,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestClientOperationInterrupt.java">org/apache/hadoop/hbase/client/TestClientOperationInterrupt.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSnapshotProcedureWithLockTimeout.java">org/apache/hadoop/hbase/master/procedure/TestSnapshotProcedureWithLockTimeout.java</a>
</td>
<td>
0
@@ -28536,7 +28536,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSnapshotProcedureWithLockTimeout.java">org/apache/hadoop/hbase/master/procedure/TestSnapshotProcedureWithLockTimeout.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestClientOperationInterrupt.java">org/apache/hadoop/hbase/client/TestClientOperationInterrupt.java</a>
</td>
<td>
0
@@ -29474,7 +29474,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext.java">org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.crypto.tls.HBaseTrustManager.java">org/apache/hadoop/hbase/io/crypto/tls/HBaseTrustManager.java</a>
</td>
<td>
0
@@ -29483,12 +29483,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.crypto.tls.HBaseTrustManager.java">org/apache/hadoop/hbase/io/crypto/tls/HBaseTrustManager.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.encoding.HFileBlockDefaultEncodingContext.java">org/apache/hadoop/hbase/io/encoding/HFileBlockDefaultEncodingContext.java</a>
</td>
<td>
0
@@ -29497,7 +29497,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
@@ -30062,7 +30062,7 @@ under the License.
</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>
+ <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
@@ -30076,7 +30076,7 @@ under the License.
</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>
+ <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>
0
@@ -31882,7 +31882,7 @@ under the License.
</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.master.procedure.TestTableProcedureWaitingQueueCleanup.java">org/apache/hadoop/hbase/master/procedure/TestTableProcedureWaitingQueueCleanup.java</a>
</td>
<td>
0
@@ -31896,7 +31896,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestTableProcedureWaitingQueueCleanup.java">org/apache/hadoop/hbase/master/procedure/TestTableProcedureWaitingQueueCleanup.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
@@ -31910,7 +31910,7 @@ under the License.
</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
@@ -31994,7 +31994,7 @@ under the License.
</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
@@ -32008,7 +32008,7 @@ under the License.
</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
@@ -32904,7 +32904,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.bucket.BucketCachePersister.java">org/apache/hadoop/hbase/io/hfile/bucket/BucketCachePersister.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest.java">org/apache/hadoop/hbase/regionserver/compactions/CompactionRequest.java</a>
</td>
<td>
0
@@ -32918,7 +32918,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.compactions.CompactionRequest.java">org/apache/hadoop/hbase/regionserver/compactions/CompactionRequest.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.io.hfile.bucket.BucketCachePersister.java">org/apache/hadoop/hbase/io/hfile/bucket/BucketCachePersister.java</a>
</td>
<td>
0
@@ -33716,7 +33716,7 @@ under the License.
</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
@@ -33730,7 +33730,7 @@ under the License.
</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
@@ -35564,7 +35564,7 @@ under the License.
</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>
+ <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
@@ -35578,7 +35578,7 @@ under the License.
</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>
+ <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>
0
@@ -36278,7 +36278,7 @@ under the License.
</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>
+ <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
@@ -36292,7 +36292,7 @@ under the License.
</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>
+ <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>
0
@@ -37650,7 +37650,7 @@ under the License.
</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
@@ -37664,7 +37664,7 @@ under the License.
</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
@@ -38084,7 +38084,7 @@ under the License.
</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>
+ <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
@@ -38098,7 +38098,7 @@ under the License.
</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>
+ <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>
0
@@ -38168,7 +38168,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncClientPauseForRpcThrottling.java">org/apache/hadoop/hbase/client/TestAsyncClientPauseForRpcThrottling.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestMemStoreLAB.java">org/apache/hadoop/hbase/regionserver/TestMemStoreLAB.java</a>
</td>
<td>
0
@@ -38182,7 +38182,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestMemStoreLAB.java">org/apache/hadoop/hbase/regionserver/TestMemStoreLAB.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncClientPauseForRpcThrottling.java">org/apache/hadoop/hbase/client/TestAsyncClientPauseForRpcThrottling.java</a>
</td>
<td>
0
@@ -39330,7 +39330,7 @@ under the License.
</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>
+ <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
@@ -39344,7 +39344,7 @@ under the License.
</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>
+ <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>
0
@@ -40324,7 +40324,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRSQosFunction.java">org/apache/hadoop/hbase/regionserver/TestRSQosFunction.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestHRegionOnCluster.java">org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.java</a>
</td>
<td>
0
@@ -40333,12 +40333,12 @@ under the License.
0
</td>
<td>
- 0
+ 2
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestHRegionOnCluster.java">org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestRSQosFunction.java">org/apache/hadoop/hbase/regionserver/TestRSQosFunction.java</a>
</td>
<td>
0
@@ -40347,7 +40347,7 @@ under the License.
0
</td>
<td>
- 2
+ 0
</td>
</tr>
<tr>
@@ -40772,7 +40772,7 @@ under the License.
</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>
+ <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
@@ -40781,12 +40781,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</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>
+ <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>
0
@@ -40795,7 +40795,7 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
@@ -41850,7 +41850,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestRaceWhenCreatingReplicationSource.java">org/apache/hadoop/hbase/replication/regionserver/TestRaceWhenCreatingReplicationSource.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.RegionReplicationLagEvaluation.java">org/apache/hadoop/hbase/RegionReplicationLagEvaluation.java</a>
</td>
<td>
0
@@ -41864,7 +41864,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.RegionReplicationLagEvaluation.java">org/apache/hadoop/hbase/RegionReplicationLagEvaluation.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.regionserver.TestRaceWhenCreatingReplicationSource.java">org/apache/hadoop/hbase/replication/regionserver/TestRaceWhenCreatingReplicationSource.java</a>
</td>
<td>
0
@@ -42508,7 +42508,7 @@ under the License.
</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
@@ -42522,7 +42522,7 @@ under the License.
</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
@@ -44244,7 +44244,7 @@ under the License.
</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
@@ -44258,7 +44258,7 @@ under the License.
</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
@@ -44356,7 +44356,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TableProcedureWaitingQueue.java">org/apache/hadoop/hbase/master/procedure/TableProcedureWaitingQueue.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.DefaultOperationQuota.java">org/apache/hadoop/hbase/quotas/DefaultOperationQuota.java</a>
</td>
<td>
0
@@ -44370,7 +44370,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.quotas.DefaultOperationQuota.java">org/apache/hadoop/hbase/quotas/DefaultOperationQuota.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TableProcedureWaitingQueue.java">org/apache/hadoop/hbase/master/procedure/TableProcedureWaitingQueue.java</a>
</td>
<td>
0
@@ -44860,7 +44860,7 @@ under the License.
</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>
+ <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
@@ -44869,12 +44869,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</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>
+ <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>
0
@@ -44883,7 +44883,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
@@ -45868,7 +45868,7 @@ under the License.
</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>
+ <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
@@ -45882,7 +45882,7 @@ under the License.
</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>
+ <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>
0
@@ -47198,7 +47198,7 @@ under the License.
</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>
+ <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
@@ -47207,12 +47207,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</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>
+ <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>
0
@@ -47221,12 +47221,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestAsyncTableScannerCloseWhileSuspending.java">org/apache/hadoop/hbase/client/TestAsyncTableScannerCloseWhileSuspending.java</a>
+ <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
@@ -47240,7 +47240,7 @@ under the License.
</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.client.TestAsyncTableScannerCloseWhileSuspending.java">org/apache/hadoop/hbase/client/TestAsyncTableScannerCloseWhileSuspending.java</a>
</td>
<td>
0
@@ -47324,7 +47324,7 @@ under the License.
</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
@@ -47338,7 +47338,7 @@ under the License.
</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
@@ -49942,7 +49942,7 @@ under the License.
</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>
+ <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
@@ -49951,12 +49951,12 @@ under the License.
0
</td>
<td>
- 0
+ 4
</td>
</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>
+ <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>
0
@@ -49965,7 +49965,7 @@ under the License.
0
</td>
<td>
- 4
+ 0
</td>
</tr>
<tr>
@@ -50628,7 +50628,7 @@ under the License.
</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
@@ -50656,7 +50656,7 @@ under the License.
</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
@@ -51496,7 +51496,7 @@ under the License.
</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
@@ -51510,7 +51510,7 @@ under the License.
</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
@@ -53106,7 +53106,7 @@ under the License.
</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
@@ -53120,7 +53120,7 @@ under the License.
</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
@@ -53568,7 +53568,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.TestHbckMetricsResource.java">org/apache/hadoop/hbase/master/http/TestHbckMetricsResource.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSnapshotRegionProcedure.java">org/apache/hadoop/hbase/master/procedure/TestSnapshotRegionProcedure.java</a>
</td>
<td>
0
@@ -53582,7 +53582,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestSnapshotRegionProcedure.java">org/apache/hadoop/hbase/master/procedure/TestSnapshotRegionProcedure.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.TestHbckMetricsResource.java">org/apache/hadoop/hbase/master/http/TestHbckMetricsResource.java</a>
</td>
<td>
0
@@ -54422,7 +54422,7 @@ under the License.
</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
@@ -54436,7 +54436,7 @@ under the License.
</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
@@ -54534,7 +54534,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestBootstrapNodeUpdate.java">org/apache/hadoop/hbase/client/TestBootstrapNodeUpdate.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestGetProcedureResult.java">org/apache/hadoop/hbase/client/TestGetProcedureResult.java</a>
</td>
<td>
0
@@ -54548,7 +54548,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestGetProcedureResult.java">org/apache/hadoop/hbase/client/TestGetProcedureResult.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestBootstrapNodeUpdate.java">org/apache/hadoop/hbase/client/TestBootstrapNodeUpdate.java</a>
</td>
<td>
0
@@ -55248,7 +55248,7 @@ under the License.
</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
@@ -55262,7 +55262,7 @@ under the License.
</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
@@ -55962,7 +55962,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMvccConsistentScanner.java">org/apache/hadoop/hbase/client/TestMvccConsistentScanner.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestFlushTableProcedureBase.java">org/apache/hadoop/hbase/master/procedure/TestFlushTableProcedureBase.java</a>
</td>
<td>
0
@@ -55976,7 +55976,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.procedure.TestFlushTableProcedureBase.java">org/apache/hadoop/hbase/master/procedure/TestFlushTableProcedureBase.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.TestMvccConsistentScanner.java">org/apache/hadoop/hbase/client/TestMvccConsistentScanner.java</a>
</td>
<td>
0
@@ -56270,7 +56270,7 @@ under the License.
</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
@@ -56284,7 +56284,7 @@ under the License.
</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
@@ -57404,7 +57404,7 @@ under the License.
</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
@@ -57418,7 +57418,7 @@ under the License.
</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
@@ -57824,7 +57824,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.gson.GsonFactory.java">org/apache/hadoop/hbase/master/http/gson/GsonFactory.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.RSGroupInfoManagerImpl.java">org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.java</a>
</td>
<td>
0
@@ -57838,7 +57838,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.rsgroup.RSGroupInfoManagerImpl.java">org/apache/hadoop/hbase/rsgroup/RSGroupInfoManagerImpl.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.http.gson.GsonFactory.java">org/apache/hadoop/hbase/master/http/gson/GsonFactory.java</a>
</td>
<td>
0
@@ -58342,7 +58342,7 @@ under the License.
</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>
+ <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
@@ -58351,12 +58351,12 @@ under the License.
0
</td>
<td>
- 0
+ 2
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestBlocksRead.java">org/apache/hadoop/hbase/regionserver/TestBlocksRead.java</a>
+ <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>
0
@@ -58370,7 +58370,7 @@ under the License.
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestBlocksRead.java">org/apache/hadoop/hbase/regionserver/TestBlocksRead.java</a>
</td>
<td>
0
@@ -58379,7 +58379,7 @@ under the License.
0
</td>
<td>
- 2
+ 0
</td>
</tr>
<tr>
@@ -59238,7 +59238,7 @@ under the License.
</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
@@ -59252,7 +59252,7 @@ under the License.
</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
@@ -59882,7 +59882,7 @@ under the License.
</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>
+ <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
@@ -59896,7 +59896,7 @@ under the License.
</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>
+ <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>
0
@@ -60988,7 +60988,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestAssignmentManagerLoadMetaRegionState.java">org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.region.TestMasterRegionWALRecovery.java">org/apache/hadoop/hbase/master/region/TestMasterRegionWALRecovery.java</a>
</td>
<td>
0
@@ -61002,7 +61002,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.region.TestMasterRegionWALRecovery.java">org/apache/hadoop/hbase/master/region/TestMasterRegionWALRecovery.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.master.assignment.TestAssignmentManagerLoadMetaRegionState.java">org/apache/hadoop/hbase/master/assignment/TestAssignmentManagerLoadMetaRegionState.java</a>
</td>
<td>
0
@@ -62528,7 +62528,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.namequeues.TestWALEventTracker.java">org/apache/hadoop/hbase/namequeues/TestWALEventTracker.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestSeekHints.java">org/apache/hadoop/hbase/filter/TestSeekHints.java</a>
</td>
<td>
0
@@ -62542,7 +62542,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.filter.TestSeekHints.java">org/apache/hadoop/hbase/filter/TestSeekHints.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.namequeues.TestWALEventTracker.java">org/apache/hadoop/hbase/namequeues/TestWALEventTracker.java</a>
</td>
<td>
0
@@ -62976,7 +62976,7 @@ under the License.
</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>
+ <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
@@ -62990,7 +62990,7 @@ under the License.
</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>
+ <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>
0
@@ -63018,7 +63018,7 @@ under the License.
</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>
+ <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
@@ -63032,7 +63032,7 @@ under the License.
</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>
+ <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>
0
@@ -64208,7 +64208,7 @@ under the License.
</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>
+ <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
@@ -64217,12 +64217,12 @@ under the License.
0
</td>
<td>
- 0
+ 4
</td>
</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>
+ <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>
0
@@ -64231,7 +64231,7 @@ under the License.
0
</td>
<td>
- 4
+ 0
</td>
</tr>
<tr>
@@ -64684,7 +64684,7 @@ under the License.
</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>
+ <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
@@ -64698,7 +64698,7 @@ under the License.
</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>
+ <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>
0
@@ -64754,7 +64754,7 @@ under the License.
</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
@@ -64768,7 +64768,7 @@ under the License.
</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
@@ -65244,7 +65244,7 @@ under the License.
</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
@@ -65258,7 +65258,7 @@ under the License.
</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
@@ -66434,7 +66434,7 @@ under the License.
</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
@@ -66448,7 +66448,7 @@ under the License.
</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
@@ -66658,7 +66658,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestEditsStuckBehindDroppedTable.java">org/apache/hadoop/hbase/replication/TestEditsStuckBehindDroppedTable.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestEndToEndSplitTransaction.java">org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.java</a>
</td>
<td>
0
@@ -66672,7 +66672,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestEndToEndSplitTransaction.java">org/apache/hadoop/hbase/regionserver/TestEndToEndSplitTransaction.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestEditsStuckBehindDroppedTable.java">org/apache/hadoop/hbase/replication/TestEditsStuckBehindDroppedTable.java</a>
</td>
<td>
0
@@ -67190,7 +67190,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.LimitedScanResultConsumer.java">org/apache/hadoop/hbase/client/LimitedScanResultConsumer.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestWideScanner.java">org/apache/hadoop/hbase/regionserver/TestWideScanner.java</a>
</td>
<td>
0
@@ -67204,7 +67204,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.regionserver.TestWideScanner.java">org/apache/hadoop/hbase/regionserver/TestWideScanner.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.client.LimitedScanResultConsumer.java">org/apache/hadoop/hbase/client/LimitedScanResultConsumer.java</a>
</td>
<td>
0
@@ -67302,7 +67302,7 @@ under the License.
</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>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.JMXListener.java">org/apache/hadoop/hbase/JMXListener.java</a>
</td>
<td>
0
@@ -67311,12 +67311,12 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.JMXListener.java">org/apache/hadoop/hbase/JMXListener.java</a>
+ <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>
0
@@ -67325,7 +67325,7 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</tr>
<tr>
@@ -69416,7 +69416,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestSyncReplicationActiveFSHLog.java">org/apache/hadoop/hbase/replication/TestSyncReplicationActiveFSHLog.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestHBaseMetaEdit.java">org/apache/hadoop/hbase/TestHBaseMetaEdit.java</a>
</td>
<td>
0
@@ -69430,7 +69430,7 @@ under the License.
</tr>
<tr>
<td>
- <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestHBaseMetaEdit.java">org/apache/hadoop/hbase/TestHBaseMetaEdit.java</a>
+ <a href="https://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.replication.TestSyncReplicationActiveFSHLog.java">org/apache/hadoop/hbase/replication/TestSyncReplicationActiveFSHLog.java</a>
</td>
<td>
0
@@ -69864,7 +69864,7 @@ under the License.
</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>
+ <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
@@ -69873,12 +69873,12 @@ under the License.
0
</td>
<td>
- 0
+ 1
</td>
</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>
+ <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>
0
@@ -69887,7 +69887,7 @@ under the License.
0
</td>
<td>
- 1
+ 0
</td>
</tr>
<tr>
diff --git a/coc.html b/coc.html
index 09c7390a6ef..525e7d220ae 100644
--- a/coc.html
+++ b/coc.html
@@ -252,7 +252,7 @@ email to <a class="externalLink" href="mailto:private@hbase.apache.org">the priv
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 1cc8e93862e..e71509f278b 100644
--- a/dependencies.html
+++ b/dependencies.html
@@ -317,7 +317,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 8350acd47a1..22769c74ed1 100644
--- a/dependency-convergence.html
+++ b/dependency-convergence.html
@@ -1216,7 +1216,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 fa9e3a127ba..b1769678634 100644
--- a/dependency-info.html
+++ b/dependency-info.html
@@ -199,7 +199,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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 8fea1352baf..a646eb9dee5 100644
--- a/dependency-management.html
+++ b/dependency-management.html
@@ -1761,7 +1761,7 @@
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</div>
<div style="float: right">
- Last Published: 2025-01-19
+ Last Published: 2025-01-22
</div>
</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-index.html b/devapidocs/allclasses-index.html
index 964bf9b951c..9c940a71838 100644
--- a/devapidocs/allclasses-index.html
+++ b/devapidocs/allclasses-index.html
@@ -11444,1808 +11444,1806 @@ loadScripts(document, 'script');</script>
<div class="block">
This is a best effort load balancer.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/Stoppable.html" title="interface in org.apache.hadoop.hbase">Stoppable</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Implementers are Stoppable.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/StoppableThread.html" title="class in org.apache.hadoop.hbase.procedure2">StoppableThread</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/StoppedRpcClientException.html" title="class in org.apache.hadoop.hbase.ipc">StoppedRpcClientException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/StoppableThread.html" title="class in org.apache.hadoop.hbase.procedure2">StoppableThread</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/StoppedRpcClientException.html" title="class in org.apache.hadoop.hbase.ipc">StoppedRpcClientException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Representation of the status of a storage cluster:</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.Node.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel.Node</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.Node.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel.Node</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a region server.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.Node.Region.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel.Node.Region</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterStatusModel.Node.Region.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterStatusModel.Node.Region</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a region hosted on a region server.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/StorageClusterStatusResource.html" title="class in org.apache.hadoop.hbase.rest">StorageClusterStatusResource</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterVersionModel.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterVersionModel</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/StorageClusterStatusResource.html" title="class in org.apache.hadoop.hbase.rest">StorageClusterStatusResource</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/StorageClusterVersionModel.html" title="class in org.apache.hadoop.hbase.rest.model">StorageClusterVersionModel</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple representation of the version of the storage cluster</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/StorageClusterVersionResource.html" title="class in org.apache.hadoop.hbase.rest">StorageClusterVersionResource</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/StorageClusterVersionResource.html" title="class in org.apache.hadoop.hbase.rest">StorageClusterVersionResource</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/Store.html" title="interface in org.apache.hadoop.hbase.regionserver">Store</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface for objects that hold a column family in a Region.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreConfigInformation</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreConfigInformation.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreConfigInformation</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">A more restricted interface for HStore.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreContext.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreContext.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This carries the immutable information and references on some of the meta data about the HStore.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StoreEngine</a><<a href="org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="type parameter in StoreEngine">SF</a> extends <a href="org/apache/hadoop/hbase/regionserver/StoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFlusher</a>,<wbr><a href="org/apache [...]
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreContext.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreContext.Builder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StoreEngine</a><<a href="org/apache/hadoop/hbase/regionserver/StoreEngine.html" title="type parameter in StoreEngine">SF</a> extends <a href="org/apache/hadoop/hbase/regionserver/StoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFlusher</a>,<wbr><a href="org/apach [...]
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">StoreEngine is a factory that can create the objects necessary for HStore to operate.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFile.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFile</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFile.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFile</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">An interface to describe a store data file.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Useful comparators for comparing store files.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetBulkTime.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetBulkTime</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetFileSize.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetFileSize</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetBulkTime.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetBulkTime</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetMaxTimestamp.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetMaxTimestamp</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetFileSize.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetFileSize</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetPathName.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetPathName</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetMaxTimestamp.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetMaxTimestamp</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StoreFileCostFunction</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileComparators.GetPathName.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileComparators.GetPathName</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StoreFileCostFunction</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Compute the cost of total open storefiles size.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileInfo.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileInfo</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Describe a StoreFile (hfile, reference, link)</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileListFile.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileListFile</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileListFile.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileListFile</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">To fully avoid listing, here we use two files for tracking.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileListFilePrettyPrinter.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileListFilePrettyPrinter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFileManager.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFileManager</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileListFilePrettyPrinter.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileListFilePrettyPrinter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFileManager.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFileManager</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Manages the store files and basic metadata about that that determines the logical structure (e.g.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileReader.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileReader</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Reader for a StoreFile.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.html" title="class in org.apache.hadoop.hbase.regionserver">StorefileRefresherChore</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StorefileRefresherChore.html" title="class in org.apache.hadoop.hbase.regionserver">StorefileRefresherChore</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A chore for refreshing the store files for secondary regions hosted in the region server.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileScanner.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileScanner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileScanner.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileScanner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">KeyValueScanner adaptor over the Reader.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTracker</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTracker.html" title="interface in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTracker</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">An interface to define how we track the store files for a give store.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerBase.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerBase</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerBase.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerBase</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base class for all store file tracker.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerFactory.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerFactory</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerFactory.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerFactory</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Factory method for creating store file tracker.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerFactory.Trackers.html" title="enum class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerFactory.Trackers</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerFactory.Trackers.html" title="enum class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerFactory.Trackers</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Maps between configuration names for trackers and implementation classes.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerValidationUtils.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerValidationUtils</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerValidationUtils.html" title="class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerValidationUtils</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A StoreFile writer.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.Builder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.SingleStoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.SingleStoreFileWriter</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.Builder.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.Builder</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFileWriter.SingleStoreFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFileWriter.SingleStoreFileWriter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/StoreFlushContext.html" title="interface in org.apache.hadoop.hbase.regionserver">StoreFlushContext</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">A package protected interface for a store flushing.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFlusher</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StoreFlusher</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Store flusher interface.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/throttle/StoreHotnessProtector.html" title="class in org.apache.hadoop.hbase.regionserver.throttle">StoreHotnessProtector</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/throttle/StoreHotnessProtector.html" title="class in org.apache.hadoop.hbase.regionserver.throttle">StoreHotnessProtector</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">StoreHotnessProtector is designed to help limit the concurrency of puts with dense columns, it
does best-effort to avoid exhausting all RS's handlers.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreScanner.html" title="class in org.apache.hadoop.hbase.regionserver">StoreScanner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreScanner.html" title="class in org.apache.hadoop.hbase.regionserver">StoreScanner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Scanner scans both the memstore and the Store.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreUtils.html" title="class in org.apache.hadoop.hbase.regionserver">StoreUtils</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StoreUtils.html" title="class in org.apache.hadoop.hbase.regionserver">StoreUtils</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility functions for region server storage layer.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/monitor/StreamSlowMonitor.html" title="class in org.apache.hadoop.hbase.io.asyncfs.monitor">StreamSlowMonitor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/monitor/StreamSlowMonitor.html" title="class in org.apache.hadoop.hbase.io.asyncfs.monitor">StreamSlowMonitor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Class for monitor the wal file flush performance.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/monitor/StreamSlowMonitor.PacketAckData.html" title="class in org.apache.hadoop.hbase.io.asyncfs.monitor">StreamSlowMonitor.PacketAckData</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/util/StreamUtils.html" title="class in org.apache.hadoop.hbase.io.util">StreamUtils</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/monitor/StreamSlowMonitor.PacketAckData.html" title="class in org.apache.hadoop.hbase.io.asyncfs.monitor">StreamSlowMonitor.PacketAckData</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Strings.html" title="class in org.apache.hadoop.hbase.util">Strings</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/util/StreamUtils.html" title="class in org.apache.hadoop.hbase.io.util">StreamUtils</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Strings.html" title="class in org.apache.hadoop.hbase.util">Strings</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility for Strings.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/util/StringUtils.html" title="class in org.apache.hadoop.hbase.procedure2.util">StringUtils</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/util/StringUtils.html" title="class in org.apache.hadoop.hbase.procedure2.util">StringUtils</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe store implementation of compaction policy.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.BoundaryStripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.BoundaryStripeCompactionRequest</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.BoundaryStripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.BoundaryStripeCompactionRequest</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Request for stripe compactor that will cause it to split the source files into several separate
files at the provided boundaries.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.SplitStripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.SplitStripeCompactionRequest</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.SplitStripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.SplitStripeCompactionRequest</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Request for stripe compactor that will cause it to split the source files into several separate
files into based on key-value count, as well as file count limit.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.StripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.StripeCompactionRequest</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.StripeCompactionRequest.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.StripeCompactionRequest</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe compaction request wrapper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.StripeInformationProvider.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.StripeInformationProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactionPolicy.StripeInformationProvider.html" title="interface in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactionPolicy.StripeInformationProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">The information about stripes that the policy needs to do its stuff</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">StripeCompactionScanQueryMatcher</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">StripeCompactionScanQueryMatcher</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Query matcher for stripe compaction if range drop deletes is used.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum class in org.apache.hadoop.hbase.regionserver.querymatcher">StripeCompactionScanQueryMatcher.DropDeletesInOutput</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactor.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum class in org.apache.hadoop.hbase.regionserver.querymatcher">StripeCompactionScanQueryMatcher.DropDeletesInOutput</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/compactions/StripeCompactor.html" title="class in org.apache.hadoop.hbase.regionserver.compactions">StripeCompactor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is the placeholder for stripe compactor.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base class for cell sink that separates the provided cells into multiple files for stripe
compaction.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.BoundaryMultiWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter.BoundaryMultiWriter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.BoundaryMultiWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter.BoundaryMultiWriter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">MultiWriter that separates the cells based on fixed row-key boundaries.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.SizeMultiWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter.SizeMultiWriter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeMultiFileWriter.SizeMultiWriter.html" title="class in org.apache.hadoop.hbase.regionserver">StripeMultiFileWriter.SizeMultiWriter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">MultiWriter that separates the cells based on target cell number per file and file count.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreConfig.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreConfig</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreConfig.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreConfig</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Configuration class for stripe store and compactions.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreEngine</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreEngine.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreEngine</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The storage engine that implements the stripe-based store/compaction scheme.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe implementation of <a href="org/apache/hadoop/hbase/regionserver/StoreFileManager.html" title="interface in org.apache.hadoop.hbase.regionserver"><code>StoreFileManager</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.KeyBeforeConcatenatedLists.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager.KeyBeforeConcatenatedLists</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.KeyBeforeConcatenatedLists.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager.KeyBeforeConcatenatedLists</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">An extension of ConcatenatedLists that has several peculiar properties.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.State.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager.State</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFileManager.State.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFileManager.State</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The state class.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe implementation of StoreFlusher.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.BoundaryStripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.BoundaryStripeFlushRequest</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.BoundaryStripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.BoundaryStripeFlushRequest</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe flush request wrapper based on boundaries.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.SizeStripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.SizeStripeFlushRequest</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.SizeStripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.SizeStripeFlushRequest</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe flush request wrapper based on size.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.StripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.StripeFlushRequest</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/StripeStoreFlusher.StripeFlushRequest.html" title="class in org.apache.hadoop.hbase.regionserver">StripeStoreFlusher.StripeFlushRequest</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stripe flush request wrapper that writes a non-striped file.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types">Struct</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types">Struct</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">
<code>Struct</code> is a simple <a href="org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a> for implementing "compound rowkey" and "compound
qualifier" schema design strategies.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/StructBuilder.html" title="class in org.apache.hadoop.hbase.types">StructBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/StructBuilder.html" title="class in org.apache.hadoop.hbase.types">StructBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A helper for building <a href="org/apache/hadoop/hbase/types/Struct.html" title="class in org.apache.hadoop.hbase.types"><code>Struct</code></a> instances.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/StructIterator.html" title="class in org.apache.hadoop.hbase.types">StructIterator</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/StructIterator.html" title="class in org.apache.hadoop.hbase.types">StructIterator</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">An <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link"><code>Iterator</code></a> over encoded <code>Struct</code> members.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Distributed procedure member's Subprocedure.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/Subprocedure.SubprocedureImpl.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure.SubprocedureImpl</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/Subprocedure.SubprocedureImpl.html" title="class in org.apache.hadoop.hbase.procedure">Subprocedure.SubprocedureImpl</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Empty Subprocedure for testing.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/procedure/SubprocedureFactory.html" title="interface in org.apache.hadoop.hbase.procedure">SubprocedureFactory</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/procedure/SubprocedureFactory.html" title="interface in org.apache.hadoop.hbase.procedure">SubprocedureFactory</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Task builder to build instances of a <a href="org/apache/hadoop/hbase/procedure/ProcedureMember.html" title="class in org.apache.hadoop.hbase.procedure"><code>ProcedureMember</code></a>'s <a href="org/apache/hadoop/hbase/procedure/Subprocedure.html" title="class in org.apache.hadoop.hbase.procedure"><code>Subprocedure</code></a>s.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/SubstringComparator.html" title="class in org.apache.hadoop.hbase.filter">SubstringComparator</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/SubstringComparator.html" title="class in org.apache.hadoop.hbase.filter">SubstringComparator</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This comparator is for use with SingleColumnValueFilter, for filtering based on the value of a
given column.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/Summary.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">Summary</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/Summary.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">Summary</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents the summary of the metrics.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/Superusers.html" title="class in org.apache.hadoop.hbase.security">Superusers</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/Superusers.html" title="class in org.apache.hadoop.hbase.security">Superusers</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Keeps lists of superusers and super groups loaded from HBase configuration, checks if certain
user is regarded as superuser.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/http/jersey/SupplierFactoryAdapter.html" title="class in org.apache.hadoop.hbase.http.jersey">SupplierFactoryAdapter</a><<a href="org/apache/hadoop/hbase/http/jersey/SupplierFactoryAdapter.html" title="type parameter in SupplierFactoryAdapter">T</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/http/jersey/SupplierFactoryAdapter.html" title="class in org.apache.hadoop.hbase.http.jersey">SupplierFactoryAdapter</a><<a href="org/apache/hadoop/hbase/http/jersey/SupplierFactoryAdapter.html" title="type parameter in SupplierFactoryAdapter">T</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Use a <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a> of type <code>T</code> as a <code>Factory</code> that provides instances of
<code>T</code>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/SwapRegionsAction.html" title="class in org.apache.hadoop.hbase.master.balancer">SwapRegionsAction</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">SwitchRpcThrottleProcedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/SwapRegionsAction.html" title="class in org.apache.hadoop.hbase.master.balancer">SwapRegionsAction</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">SwitchRpcThrottleProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure to switch rpc throttle</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SwitchRpcThrottleRemoteCallable.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SwitchRpcThrottleRemoteCallable</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SwitchRpcThrottleRemoteCallable.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SwitchRpcThrottleRemoteCallable</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The callable executed at RS side to switch rpc throttle state.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">SwitchRpcThrottleRemoteProcedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/SwitchRpcThrottleRemoteProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">SwitchRpcThrottleRemoteProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure to switch rpc throttle on region server</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/SyncCoprocessorRpcChannel.html" title="class in org.apache.hadoop.hbase.client">SyncCoprocessorRpcChannel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/SyncCoprocessorRpcChannel.html" title="class in org.apache.hadoop.hbase.client">SyncCoprocessorRpcChannel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Please stop using this class again, as it is too low level, which is part of the rpc
framework for HBase.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/SyncFuture.html" title="class in org.apache.hadoop.hbase.regionserver.wal">SyncFuture</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/SyncFuture.html" title="class in org.apache.hadoop.hbase.regionserver.wal">SyncFuture</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A Future on a filesystem sync call.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/SyncFutureCache.html" title="class in org.apache.hadoop.hbase.regionserver.wal">SyncFutureCache</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/SyncFutureCache.html" title="class in org.apache.hadoop.hbase.regionserver.wal">SyncFutureCache</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A cache of <a href="org/apache/hadoop/hbase/regionserver/wal/SyncFuture.html" title="class in org.apache.hadoop.hbase.regionserver.wal"><code>SyncFuture</code></a>s.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerInfoProvider</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerInfoProvider</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Get the information for a sync replication peer.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProviderImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerInfoProviderImpl</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerMappingManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerMappingManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerInfoProviderImpl.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerInfoProviderImpl</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/SyncReplicationPeerMappingManager.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SyncReplicationPeerMappingManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Used to map region to sync replication peer id.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The manager for replaying remote wal.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.UsedReplayWorkersForPeer.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager.UsedReplayWorkersForPeer</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALManager.UsedReplayWorkersForPeer.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALManager.UsedReplayWorkersForPeer</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class is used to record the used workers(region servers) for a replication peer.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALProcedure</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALProcedure</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure for replaying a set of remote wals.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALRemoteProcedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">SyncReplicationReplayWALRemoteProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A remote procedure which is used to send replaying remote wal work to region server.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum class in org.apache.hadoop.hbase.replication">SyncReplicationState</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/replication/SyncReplicationState.html" title="enum class in org.apache.hadoop.hbase.replication">SyncReplicationState</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Used by synchronous replication.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.CellScanner.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.CellScanner</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.Counter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html" title="class in org.apache.hadoop.hbase.replication">SystemTableWALEntryFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.CellScanner.html" title="class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.CellScanner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum class in org.apache.hadoop.hbase.mapreduce">SyncTable.SyncMapper.Counter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/SystemTableWALEntryFilter.html" title="class in org.apache.hadoop.hbase.replication">SystemTableWALEntryFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Skips WAL edits for all System tables including hbase:meta except hbase:acl.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Used to communicate with a single HBase table.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.CheckAndMutateBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">Deprecated.
<div class="deprecation-comment">Since 3.0.0, will be removed in 4.0.0.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">Deprecated.
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/Table.CheckAndMutateWithFilterBuilder.html" title="interface in org.apache.hadoop.hbase.client">Table.CheckAndMutateWithFilterBuilder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">Deprecated.
<div class="deprecation-comment">Since 3.0.0, will be removed in 4.0.0.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/impl/TableBackupClient.html" title="class in org.apache.hadoop.hbase.backup.impl">TableBackupClient</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/impl/TableBackupClient.html" title="class in org.apache.hadoop.hbase.backup.impl">TableBackupClient</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base class for backup operation.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/backup/impl/TableBackupClient.Stage.html" title="enum class in org.apache.hadoop.hbase.backup.impl">TableBackupClient.Stage</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableBuilder.html" title="interface in org.apache.hadoop.hbase.client">TableBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/backup/impl/TableBackupClient.Stage.html" title="enum class in org.apache.hadoop.hbase.backup.impl">TableBackupClient.Stage</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableBuilder.html" title="interface in org.apache.hadoop.hbase.client">TableBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">For creating <a href="org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client"><code>Table</code></a> instance.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableBuilderBase.html" title="class in org.apache.hadoop.hbase.client">TableBuilderBase</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableBuilderBase.html" title="class in org.apache.hadoop.hbase.client">TableBuilderBase</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base class for all table builders.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/replication/TableCFs.html" title="class in org.apache.hadoop.hbase.client.replication">TableCFs</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Used by <a href="org/apache/hadoop/hbase/client/Admin.html#listReplicatedTableCFs()"><code>Admin.listReplicatedTableCFs()</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<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>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convenience class for composing an instance of <a href="org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client"><code>TableDescriptor</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder.ModifyableTableDescriptor</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/TableDescriptorChecker.html" title="class in org.apache.hadoop.hbase.util">TableDescriptorChecker</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorBuilder.ModifyableTableDescriptor.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorBuilder.ModifyableTableDescriptor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/TableDescriptorChecker.html" title="class in org.apache.hadoop.hbase.util">TableDescriptorChecker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<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>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/TableDescriptorChecker.ThrowingRunnable.html" title="interface in org.apache.hadoop.hbase.util">TableDescriptorChecker.ThrowingRunnable</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/TableDescriptors.html" title="interface in org.apache.hadoop.hbase">TableDescriptors</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/TableDescriptorChecker.ThrowingRunnable.html" title="interface in org.apache.hadoop.hbase.util">TableDescriptorChecker.ThrowingRunnable</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/TableDescriptors.html" title="interface in org.apache.hadoop.hbase">TableDescriptors</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Get, remove and modify table descriptors.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorUtils.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorUtils</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorUtils.TableDescriptorDelta.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorUtils.TableDescriptorDelta</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorUtils.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorUtils</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableExistsException.html" title="class in org.apache.hadoop.hbase">TableExistsException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableDescriptorUtils.TableDescriptorDelta.html" title="class in org.apache.hadoop.hbase.client">TableDescriptorUtils.TableDescriptorDelta</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableExistsException.html" title="class in org.apache.hadoop.hbase">TableExistsException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when a table exists but should not.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/example/TableHFileArchiveTracker.html" title="class in org.apache.hadoop.hbase.backup.example">TableHFileArchiveTracker</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/example/TableHFileArchiveTracker.html" title="class in org.apache.hadoop.hbase.backup.example">TableHFileArchiveTracker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Track HFile archiving state changes in ZooKeeper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableInfoMissingException.html" title="class in org.apache.hadoop.hbase">TableInfoMissingException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableInfoMissingException.html" title="class in org.apache.hadoop.hbase">TableInfoMissingException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Failed to find <code>.tableinfo</code> file under the table directory.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableInfoModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableInfoModel</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
-<div class="block">Representation of a list of table regions.</div>
-</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableInputFormat</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableInfoModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableInfoModel</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
-<div class="block">Convert HBase tabular data into a format that is consumable by Map/Reduce.</div>
+<div class="block">Representation of a list of table regions.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableInputFormat</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableInputFormat</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convert HBase tabular data into a format that is consumable by Map/Reduce.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableInputFormatBase.html" title="class in org.apache.hadoop.hbase.mapred">TableInputFormatBase</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableInputFormat</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
-<div class="block">A Base for <a href="org/apache/hadoop/hbase/mapred/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><code>TableInputFormat</code></a>s.</div>
+<div class="block">Convert HBase tabular data into a format that is consumable by Map/Reduce.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableInputFormatBase</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableInputFormatBase.html" title="class in org.apache.hadoop.hbase.mapred">TableInputFormatBase</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="block">A Base for <a href="org/apache/hadoop/hbase/mapred/TableInputFormat.html" title="class in org.apache.hadoop.hbase.mapred"><code>TableInputFormat</code></a>s.</div>
+</div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableInputFormatBase.html" title="class in org.apache.hadoop.hbase.mapreduce">TableInputFormatBase</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<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>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html" title="interface in org.apache.hadoop.hbase.util.hbck">TableIntegrityErrorHandler</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandler.html" title="interface in org.apache.hadoop.hbase.util.hbck">TableIntegrityErrorHandler</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">This interface provides callbacks for handling particular table integrity invariant violations.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html" title="class in org.apache.hadoop.hbase.util.hbck">TableIntegrityErrorHandlerImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/hbck/TableIntegrityErrorHandlerImpl.html" title="class in org.apache.hadoop.hbase.util.hbck">TableIntegrityErrorHandlerImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple implementation of TableIntegrityErrorHandler.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableListModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableListModel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableListModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableListModel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple representation of a list of table names.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="interface in org.apache.hadoop.hbase.mapred">TableMap</a><<a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="type parameter in TableMap">K</a> extends org.apache.hadoop.io.WritableComparable<? super <a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="type parameter in TableMap">K</a>>,<wbr><a href="org/apache/hadoop/hbas [...]
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="interface in org.apache.hadoop.hbase.mapred">TableMap</a><<a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="type parameter in TableMap">K</a> extends org.apache.hadoop.io.WritableComparable<? super <a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="type parameter in TableMap">K</a>>,<wbr><a href="org/apache/hadoop/hba [...]
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Scan an HBase table to sort by a specified sort column.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TableMapper</a><<a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="type parameter in TableMapper">KEYOUT</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="type parameter in TableMapper">VALUEOUT</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TableMapper</a><<a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="type parameter in TableMapper">KEYOUT</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="type parameter in TableMapper">VALUEOUT</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Extends the base <code>Mapper</code> class to add the required input key and value classes.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred">TableMapReduceUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapred">TableMapReduceUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility for <a href="org/apache/hadoop/hbase/mapred/TableMap.html" title="interface in org.apache.hadoop.hbase.mapred"><code>TableMap</code></a> and <a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="interface in org.apache.hadoop.hbase.mapred"><code>TableReduce</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapreduce">TableMapReduceUtil</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.html" title="class in org.apache.hadoop.hbase.mapreduce">TableMapReduceUtil</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility for <a href="org/apache/hadoop/hbase/mapreduce/TableMapper.html" title="class in org.apache.hadoop.hbase.mapreduce"><code>TableMapper</code></a> and <a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="class in org.apache.hadoop.hbase.mapreduce"><code>TableReducer</code></a></div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableModel</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableModel</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple representation of a table name.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html" title="class in org.apache.hadoop.hbase.hbtop.mode">TableModeStrategy</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/mode/TableModeStrategy.html" title="class in org.apache.hadoop.hbase.hbtop.mode">TableModeStrategy</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implementation for <a href="org/apache/hadoop/hbase/hbtop/mode/ModeStrategy.html" title="interface in org.apache.hadoop.hbase.hbtop.mode"><code>ModeStrategy</code></a> for Table Mode.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Immutable POJO class for representing a table name.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/TableNamespaceManager.html" title="class in org.apache.hadoop.hbase.master">TableNamespaceManager</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/TableNamespaceManager.html" title="class in org.apache.hadoop.hbase.master">TableNamespaceManager</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is a helper class used internally to manage the namespace metadata that is stored in the ns
family in meta table.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotDisabledException.html" title="class in org.apache.hadoop.hbase">TableNotDisabledException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotDisabledException.html" title="class in org.apache.hadoop.hbase">TableNotDisabledException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown if a table should be offline but is not.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotEnabledException.html" title="class in org.apache.hadoop.hbase">TableNotEnabledException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotEnabledException.html" title="class in org.apache.hadoop.hbase">TableNotEnabledException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown if a table should be enabled but is not.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase">TableNotFoundException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/TableNotFoundException.html" title="class in org.apache.hadoop.hbase">TableNotFoundException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when a table cannot be located.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/trace/TableOperationSpanBuilder.html" title="class in org.apache.hadoop.hbase.client.trace">TableOperationSpanBuilder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/trace/TableOperationSpanBuilder.html" title="class in org.apache.hadoop.hbase.client.trace">TableOperationSpanBuilder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Construct <code>Span</code> instances originating from "table operations" -- the verbs in our public
API that interact with data in tables.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableOutputCommitter.html" title="class in org.apache.hadoop.hbase.mapreduce">TableOutputCommitter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableOutputCommitter.html" title="class in org.apache.hadoop.hbase.mapreduce">TableOutputCommitter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Small committer class that does not do anything.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableOutputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableOutputFormat</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableOutputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableOutputFormat</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convert Map/Reduce output and write it to an HBase table</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableOutputFormat</a><<a href="org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html" title="type parameter in TableOutputFormat">KEY</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableOutputFormat</a><<a href="org/apache/hadoop/hbase/mapreduce/TableOutputFormat.html" title="type parameter in TableOutputFormat">KEY</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convert Map/Reduce output and write it to an HBase table.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableOutputFormat.TableRecordWriter.html" title="class in org.apache.hadoop.hbase.mapred">TableOutputFormat.TableRecordWriter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableOutputFormat.TableRecordWriter.html" title="class in org.apache.hadoop.hbase.mapred">TableOutputFormat.TableRecordWriter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convert Reduce output (key, value) to (HStoreKey, KeyedDataArrayWritable) and write to an HBase
table.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.html" title="class in org.apache.hadoop.hbase.client">TableOverAsyncTable</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.html" title="class in org.apache.hadoop.hbase.client">TableOverAsyncTable</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The table implementation based on <a href="org/apache/hadoop/hbase/client/AsyncTable.html" title="interface in org.apache.hadoop.hbase.client"><code>AsyncTable</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.RegionCoprocessorRpcChannel.html" title="class in org.apache.hadoop.hbase.client">TableOverAsyncTable.RegionCoprocessorRpcChannel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.StubCall.html" title="interface in org.apache.hadoop.hbase.client">TableOverAsyncTable.StubCall</a><<a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.StubCall.html" title="type parameter in TableOverAsyncTable.StubCall">R</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/snapshot/TablePartiallyOpenException.html" title="class in org.apache.hadoop.hbase.snapshot">TablePartiallyOpenException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.RegionCoprocessorRpcChannel.html" title="class in org.apache.hadoop.hbase.client">TableOverAsyncTable.RegionCoprocessorRpcChannel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.StubCall.html" title="interface in org.apache.hadoop.hbase.client">TableOverAsyncTable.StubCall</a><<a href="org/apache/hadoop/hbase/client/TableOverAsyncTable.StubCall.html" title="type parameter in TableOverAsyncTable.StubCall">R</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/snapshot/TablePartiallyOpenException.html" title="class in org.apache.hadoop.hbase.snapshot">TablePartiallyOpenException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown if a table should be online/offline, but is partially open.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents an authorization for access for the given actions, optionally restricted to the given
column family or column qualifier, over the given table.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html" title="interface in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.html" title="interface in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Procedures that operates on a specific Table (e.g.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum class in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureWaitingQueue.html" title="class in org.apache.hadoop.hbase.master.procedure">TableProcedureWaitingQueue</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum class in org.apache.hadoop.hbase.master.procedure">TableProcedureInterface.TableOperationType</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TableProcedureWaitingQueue.html" title="class in org.apache.hadoop.hbase.master.procedure">TableProcedureWaitingQueue</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">To prevent multiple Create/Modify/Disable/Enable table procedures run at the same time, we will
keep table procedure in this queue first before actually enqueuing it to
MasterProcedureScheduler's tableQueue.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TableQueue.html" title="class in org.apache.hadoop.hbase.master.procedure">TableQueue</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html" title="class in org.apache.hadoop.hbase.quotas">TableQuotaSnapshotStore</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TableQueue.html" title="class in org.apache.hadoop.hbase.master.procedure">TableQueue</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TableQuotaSnapshotStore.html" title="class in org.apache.hadoop.hbase.quotas">TableQuotaSnapshotStore</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block"><a href="org/apache/hadoop/hbase/quotas/QuotaSnapshotStore.html" title="interface in org.apache.hadoop.hbase.quotas"><code>QuotaSnapshotStore</code></a> for tables.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapred">TableRecordReader</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapred">TableRecordReader</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Iterate over an HBase table data, return (Text, RowResult) pairs</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableRecordReader</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableRecordReader</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Iterate over an HBase table data, return (ImmutableBytesWritable, Result) pairs.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred">TableRecordReaderImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapred">TableRecordReaderImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Iterate over an HBase table data, return (Text, RowResult) pairs</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapreduce">TableRecordReaderImpl</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableRecordReaderImpl.html" title="class in org.apache.hadoop.hbase.mapreduce">TableRecordReaderImpl</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Iterate over an HBase table data, return (ImmutableBytesWritable, Result) pairs.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="interface in org.apache.hadoop.hbase.mapred">TableReduce</a><<a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="type parameter in TableReduce">K</a> extends org.apache.hadoop.io.WritableComparable,<wbr><a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="type parameter in TableReduce">V</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="interface in org.apache.hadoop.hbase.mapred">TableReduce</a><<a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="type parameter in TableReduce">K</a> extends org.apache.hadoop.io.WritableComparable,<wbr><a href="org/apache/hadoop/hbase/mapred/TableReduce.html" title="type parameter in TableReduce">V</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Write a table, sorting by the input key</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="class in org.apache.hadoop.hbase.mapreduce">TableReducer</a><<a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="type parameter in TableReducer">KEYIN</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="type parameter in TableReducer">VALUEIN</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/Tab [...]
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="class in org.apache.hadoop.hbase.mapreduce">TableReducer</a><<a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="type parameter in TableReducer">KEYIN</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/TableReducer.html" title="type parameter in TableReducer">VALUEIN</a>,<wbr><a href="org/apache/hadoop/hbase/mapreduce/Tabl [...]
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Extends the basic <code>Reducer</code> class to add the required key and value input/output
classes.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableRegionModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableRegionModel</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableRegionModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableRegionModel</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Representation of a region of a table and its current location on the storage cluster.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/TableReplicationQueueStorage.html" title="class in org.apache.hadoop.hbase.replication">TableReplicationQueueStorage</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/TableReplicationQueueStorage.html" title="class in org.apache.hadoop.hbase.replication">TableReplicationQueueStorage</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">HBase table based replication queue storage.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableScanResource.html" title="class in org.apache.hadoop.hbase.rest">TableScanResource</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableResource.html" title="class in org.apache.hadoop.hbase.rest">TableResource</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableScanResource.CellSetModelStream.html" title="class in org.apache.hadoop.hbase.rest">TableScanResource.CellSetModelStream</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableScanResource.html" title="class in org.apache.hadoop.hbase.rest">TableScanResource</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableSchemaModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableSchemaModel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/TableScanResource.CellSetModelStream.html" title="class in org.apache.hadoop.hbase.rest">TableScanResource.CellSetModelStream</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/TableSchemaModel.html" title="class in org.apache.hadoop.hbase.rest.model">TableSchemaModel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A representation of HBase table descriptors.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">TableSkewCostFunction</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">TableSkewCostFunction</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Compute the cost of a potential cluster configuration based upon how evenly distributed tables
are.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">TableSnapshotInputFormat allows a MapReduce job to run over a table snapshot.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">TableSnapshotInputFormat allows a MapReduce job to run over a table snapshot.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat.TableSnapshotRecordReader</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat.TableSnapshotRegionRecordReader</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRecordReader.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat.TableSnapshotRecordReader</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRegionSplit.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat.TableSnapshotRegionSplit</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat.TableSnapshotRegionRecordReader</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat.TableSnapshotRegionSplit</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSnapshotInputFormat.TableSnapshotRegionSplit.html" title="class in org.apache.hadoop.hbase.mapred">TableSnapshotInputFormat.TableSnapshotRegionSplit</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormat.TableSnapshotRegionSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormat.TableSnapshotRegionSplit</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Hadoop MR API-agnostic implementation for mapreduce over table snapshots.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.InputSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.InputSplit</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implementation class for InputSplit logic common between mapred and mapreduce.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.RecordReader</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.RecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl.RecordReader</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implementation class for RecordReader logic common between mapred and mapreduce.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableSnapshotScanner.html" title="class in org.apache.hadoop.hbase.client">TableSnapshotScanner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableSnapshotScanner.html" title="class in org.apache.hadoop.hbase.client">TableSnapshotScanner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A Scanner which performs a scan over snapshot files.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TableSpaceQuotaSnapshotNotifier.html" title="class in org.apache.hadoop.hbase.quotas">TableSpaceQuotaSnapshotNotifier</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TableSpaceQuotaSnapshotNotifier.html" title="class in org.apache.hadoop.hbase.quotas">TableSpaceQuotaSnapshotNotifier</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A <a href="org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotNotifier.html" title="interface in org.apache.hadoop.hbase.quotas"><code>SpaceQuotaSnapshotNotifier</code></a> which uses the hbase:quota table.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/trace/TableSpanBuilder.html" title="class in org.apache.hadoop.hbase.client.trace">TableSpanBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/trace/TableSpanBuilder.html" title="class in org.apache.hadoop.hbase.client.trace">TableSpanBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Construct <code>Span</code> instances involving data tables.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSplit.html" title="class in org.apache.hadoop.hbase.mapred">TableSplit</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapred/TableSplit.html" title="class in org.apache.hadoop.hbase.mapred">TableSplit</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A table split corresponds to a key range [low, high)</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSplit</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TableSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSplit</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A table split corresponds to a key range (low, high) and an optional scanner.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum class in org.apache.hadoop.hbase.mapreduce">TableSplit.Version</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum class in org.apache.hadoop.hbase.mapreduce">TableSplit.Version</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/TableState.html" title="class in org.apache.hadoop.hbase.client">TableState</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents table state.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/client/TableState.State.html" title="enum class in org.apache.hadoop.hbase.client">TableState.State</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/TableStateManager.html" title="class in org.apache.hadoop.hbase.master">TableStateManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/client/TableState.State.html" title="enum class in org.apache.hadoop.hbase.client">TableState.State</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/TableStateManager.html" title="class in org.apache.hadoop.hbase.master">TableStateManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is a helper class used to manage table states.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase">Tag</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Tags are part of cells and helps to add metadata about them.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/TagBuilder.html" title="interface in org.apache.hadoop.hbase">TagBuilder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Builder implementation to create <a href="org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase"><code>Tag</code></a> Call setTagValue(byte[]) method to create
<a href="org/apache/hadoop/hbase/ArrayBackedTag.html" title="class in org.apache.hadoop.hbase"><code>ArrayBackedTag</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagBuilderFactory.html" title="class in org.apache.hadoop.hbase">TagBuilderFactory</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagBuilderFactory.html" title="class in org.apache.hadoop.hbase">TagBuilderFactory</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Factory to create Tags.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagBuilderImpl.html" title="class in org.apache.hadoop.hbase">TagBuilderImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagBuilderImpl.html" title="class in org.apache.hadoop.hbase">TagBuilderImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Builder implementation to create <a href="org/apache/hadoop/hbase/Tag.html" title="interface in org.apache.hadoop.hbase"><code>Tag</code></a><br>
Call setTagValue(byte[]) method to create <a href="org/apache/hadoop/hbase/ArrayBackedTag.html" title="class in org.apache.hadoop.hbase"><code>ArrayBackedTag</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/TagCompressionContext.html" title="class in org.apache.hadoop.hbase.io">TagCompressionContext</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Context that holds the dictionary for Tag compression and doing the compress/uncompress.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagType.html" title="class in org.apache.hadoop.hbase">TagType</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagUtil.html" title="class in org.apache.hadoop.hbase">TagUtil</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagType.html" title="class in org.apache.hadoop.hbase">TagType</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">TakeSnapshotHandler</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/TagUtil.html" title="class in org.apache.hadoop.hbase">TagUtil</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/snapshot/TakeSnapshotHandler.html" title="class in org.apache.hadoop.hbase.master.snapshot">TakeSnapshotHandler</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A handler for taking snapshots from the master.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskGroup.html" title="class in org.apache.hadoop.hbase.monitoring">TaskGroup</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskGroup.html" title="class in org.apache.hadoop.hbase.monitoring">TaskGroup</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The <a href="org/apache/hadoop/hbase/monitoring/TaskGroup.html" title="class in org.apache.hadoop.hbase.monitoring"><code>TaskGroup</code></a> can be seen as a big <a href="org/apache/hadoop/hbase/monitoring/MonitoredTask.html" title="interface in org.apache.hadoop.hbase.monitoring"><code>MonitoredTask</code></a>, which contains a list of sub
monitored tasks.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Singleton which keeps track of tasks going on in this VM.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.PassthroughInvocationHandler.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor.PassthroughInvocationHandler</a><<a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.PassthroughInvocationHandler.html" title="type parameter in TaskMonitor.PassthroughInvocationHandler">T</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.PassthroughInvocationHandler.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor.PassthroughInvocationHandler</a><<a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.PassthroughInvocationHandler.html" title="type parameter in TaskMonitor.PassthroughInvocationHandler">T</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">An InvocationHandler that simply passes through calls to the original object.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskAndWeakRefPair.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskAndWeakRefPair</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskAndWeakRefPair.html" title="class in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskAndWeakRefPair</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class encapsulates an object as well as a weak reference to a proxy that passes through
calls to that object.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.html" title="interface in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskFilter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum class in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskFilter.TaskType</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/TBoundedThreadPoolServer.html" title="class in org.apache.hadoop.hbase.thrift">TBoundedThreadPoolServer</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.html" title="interface in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskFilter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum class in org.apache.hadoop.hbase.monitoring">TaskMonitor.TaskFilter.TaskType</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/TBoundedThreadPoolServer.html" title="class in org.apache.hadoop.hbase.thrift">TBoundedThreadPoolServer</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A bounded thread pool server customized for HBase.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/TBoundedThreadPoolServer.Args.html" title="class in org.apache.hadoop.hbase.thrift">TBoundedThreadPoolServer.Args</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/hbtop/terminal/Terminal.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">Terminal</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/TBoundedThreadPoolServer.Args.html" title="class in org.apache.hadoop.hbase.thrift">TBoundedThreadPoolServer.Args</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/hbtop/terminal/Terminal.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">Terminal</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">The terminal interface that is an abstraction of terminal screen.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">TerminalImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalImpl.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">TerminalImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">An implementation of the <a href="org/apache/hadoop/hbase/hbtop/terminal/Terminal.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal"><code>Terminal</code></a> interface for normal display mode.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/hbtop/terminal/TerminalPrinter.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">TerminalPrinter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/hbtop/terminal/TerminalPrinter.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal">TerminalPrinter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">The interface responsible for printing to the terminal.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">TerminalPrinterImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/TerminalPrinterImpl.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">TerminalPrinterImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">An implementation of the <a href="org/apache/hadoop/hbase/hbtop/terminal/TerminalPrinter.html" title="interface in org.apache.hadoop.hbase.hbtop.terminal"><code>TerminalPrinter</code></a> interface for normal display mode.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/TerminalSize.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">TerminalSize</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/terminal/TerminalSize.html" title="class in org.apache.hadoop.hbase.hbtop.terminal">TerminalSize</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Terminal dimensions in 2-d space, measured in number of rows and columns.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="class in org.apache.hadoop.hbase.types">TerminatedWrapper</a><<a href="org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="type parameter in TerminatedWrapper">T</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="class in org.apache.hadoop.hbase.types">TerminatedWrapper</a><<a href="org/apache/hadoop/hbase/types/TerminatedWrapper.html" title="type parameter in TerminatedWrapper">T</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Wraps an existing <code>DataType</code> implementation as a terminated version of itself.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/testing/TestingHBaseCluster.html" title="interface in org.apache.hadoop.hbase.testing">TestingHBaseCluster</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/testing/TestingHBaseCluster.html" title="interface in org.apache.hadoop.hbase.testing">TestingHBaseCluster</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">A mini hbase cluster used for testing.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterOption</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterImpl.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterOption</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Options for starting up a mini testing cluster <a href="org/apache/hadoop/hbase/testing/TestingHBaseCluster.html" title="interface in org.apache.hadoop.hbase.testing"><code>TestingHBaseCluster</code></a> (including an hbase,
dfs and zookeeper clusters) in test.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.Builder.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterOption.Builder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.Builder.html" title="class in org.apache.hadoop.hbase.testing">TestingHBaseClusterOption.Builder</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Builder pattern for creating an <a href="org/apache/hadoop/hbase/testing/TestingHBaseClusterOption.html" title="class in org.apache.hadoop.hbase.testing"><code>TestingHBaseClusterOption</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TextSortReducer.html" title="class in org.apache.hadoop.hbase.mapreduce">TextSortReducer</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TextSortReducer.html" title="class in org.apache.hadoop.hbase.mapreduce">TextSortReducer</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Emits Sorted KeyValues.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/THBaseThreadPoolExecutor.html" title="class in org.apache.hadoop.hbase.thrift">THBaseThreadPoolExecutor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/THBaseThreadPoolExecutor.html" title="class in org.apache.hadoop.hbase.thrift">THBaseThreadPoolExecutor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A ThreadPoolExecutor customized for working with HBase thrift to update metrics before and after
the execution of a task.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/ThreadMonitoring.html" title="class in org.apache.hadoop.hbase.monitoring">ThreadMonitoring</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Threads.html" title="class in org.apache.hadoop.hbase.util">Threads</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/monitoring/ThreadMonitoring.html" title="class in org.apache.hadoop.hbase.monitoring">ThreadMonitoring</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Threads.html" title="class in org.apache.hadoop.hbase.util">Threads</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Thread Utility</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/ThreadSafeMemStoreSizing.html" title="class in org.apache.hadoop.hbase.regionserver">ThreadSafeMemStoreSizing</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/ThreadSafeMemStoreSizing.html" title="class in org.apache.hadoop.hbase.regionserver">ThreadSafeMemStoreSizing</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Accounting of current heap and data sizes.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftAdmin.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftAdmin</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftClientBuilder</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftAdmin.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftAdmin</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftClientBuilder</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.DefaultThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.DefaultThriftClientBuilder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.DefaultThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.DefaultThriftClientBuilder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">the default thrift client builder.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.DelayRetryHandler.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.DelayRetryHandler</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.HTTPThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.HTTPThriftClientBuilder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.DelayRetryHandler.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.DelayRetryHandler</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftConnection.HTTPThriftClientBuilder.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftConnection.HTTPThriftClientBuilder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">the default thrift http client builder.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The HBaseServiceHandler is a glue object that connects Thrift RPC calls to the HBase client API
primarily defined in the Admin and Table objects.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftHBaseServiceHandler.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftHBaseServiceHandler</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftHBaseServiceHandler.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftHBaseServiceHandler</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class is a glue object that connects Thrift RPC calls to the HBase client API primarily
defined in the Table interface.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.IOErrorWithCause.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler.IOErrorWithCause</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.ResultScannerWrapper.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler.ResultScannerWrapper</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/thrift2/ThriftHBaseServiceHandler.TIOErrorWithCause.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftHBaseServiceHandler.TIOErrorWithCause</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.IOErrorWithCause.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler.IOErrorWithCause</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHBaseServiceHandler.ResultScannerWrapper.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHBaseServiceHandler.ResultScannerWrapper</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/thrift2/ThriftHBaseServiceHandler.TIOErrorWithCause.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftHBaseServiceHandler.TIOErrorWithCause</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Thrift Http Servlet is used for performing Kerberos authentication if security is enabled and
also used for setting the user specified in "doAs" parameter.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.HttpKerberosServerAction.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet.HttpKerberosServerAction</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.RemoteUserIdentity.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet.RemoteUserIdentity</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.HttpKerberosServerAction.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet.HttpKerberosServerAction</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftHttpServlet.RemoteUserIdentity.html" title="class in org.apache.hadoop.hbase.thrift">ThriftHttpServlet.RemoteUserIdentity</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Basic "struct" class to hold the final base64-encoded, authenticated GSSAPI token for the user
with the given principal talking to the Thrift server.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftMetrics.html" title="class in org.apache.hadoop.hbase.thrift">ThriftMetrics</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftMetrics.html" title="class in org.apache.hadoop.hbase.thrift">ThriftMetrics</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class is for maintaining the various statistics of thrift server and publishing them through
the metrics interfaces.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/thrift/ThriftMetrics.ThriftServerType.html" title="enum class in org.apache.hadoop.hbase.thrift">ThriftMetrics.ThriftServerType</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftServer.html" title="class in org.apache.hadoop.hbase.thrift">ThriftServer</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/thrift/ThriftMetrics.ThriftServerType.html" title="enum class in org.apache.hadoop.hbase.thrift">ThriftMetrics.ThriftServerType</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftServer.html" title="class in org.apache.hadoop.hbase.thrift">ThriftServer</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">ThriftServer- this class starts up a Thrift server which implements the Hbase API specified in
the Hbase.thrift IDL file.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftServer.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftServer</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftServer.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftServer</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ThriftServer - this class starts up a Thrift server which implements the HBase API specified in
the HbaseClient.thrift IDL file.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftTable.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftTable</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftUtilities.html" title="class in org.apache.hadoop.hbase.thrift">ThriftUtilities</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/client/ThriftTable.html" title="class in org.apache.hadoop.hbase.thrift2.client">ThriftTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftUtilities.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftUtilities</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift/ThriftUtilities.html" title="class in org.apache.hadoop.hbase.thrift">ThriftUtilities</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hadoopbackport/ThrottledInputStream.html" title="class in org.apache.hadoop.hbase.io.hadoopbackport">ThrottledInputStream</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/thrift2/ThriftUtilities.html" title="class in org.apache.hadoop.hbase.thrift2">ThriftUtilities</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hadoopbackport/ThrottledInputStream.html" title="class in org.apache.hadoop.hbase.io.hadoopbackport">ThrottledInputStream</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The ThrottleInputStream provides bandwidth throttling on a specified InputStream.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/ThrottleSettings.html" title="class in org.apache.hadoop.hbase.quotas">ThrottleSettings</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum class in org.apache.hadoop.hbase.quotas">ThrottleType</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/ThrottleSettings.html" title="class in org.apache.hadoop.hbase.quotas">ThrottleSettings</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum class in org.apache.hadoop.hbase.quotas">ThrottleType</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Describe the Throttle Type.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/throttle/ThroughputController.html" title="interface in org.apache.hadoop.hbase.regionserver.throttle">ThroughputController</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A utility that constrains the total throughput of one or more simultaneous flows by sleeping when
necessary.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/throttle/ThroughputControlUtil.html" title="class in org.apache.hadoop.hbase.regionserver.throttle">ThroughputControlUtil</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/throttle/ThroughputControlUtil.html" title="class in org.apache.hadoop.hbase.regionserver.throttle">ThroughputControlUtil</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Helper methods for throttling</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html" title="class in org.apache.hadoop.hbase.quotas">TimeBasedLimiter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html" title="class in org.apache.hadoop.hbase.quotas">TimeBasedLimiter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple time based limiter that checks the quota Throttle</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/TimeMeasurable.html" title="interface in org.apache.hadoop.hbase.util">TimeMeasurable</a><<a href="org/apache/hadoop/hbase/util/TimeMeasurable.html" title="type parameter in TimeMeasurable">T</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/util/TimeMeasurable.html" title="interface in org.apache.hadoop.hbase.util">TimeMeasurable</a><<a href="org/apache/hadoop/hbase/util/TimeMeasurable.html" title="type parameter in TimeMeasurable">T</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Methods that implement this interface can be measured elapsed time.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/errorhandling/TimeoutException.html" title="class in org.apache.hadoop.hbase.errorhandling">TimeoutException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/errorhandling/TimeoutException.html" title="class in org.apache.hadoop.hbase.errorhandling">TimeoutException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Exception for timeout of a task.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/errorhandling/TimeoutExceptionInjector.html" title="class in org.apache.hadoop.hbase.errorhandling">TimeoutExceptionInjector</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/errorhandling/TimeoutExceptionInjector.html" title="class in org.apache.hadoop.hbase.errorhandling">TimeoutExceptionInjector</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Time a given process/operation and report a failure if the elapsed time exceeds the max allowed
time.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html" title="class in org.apache.hadoop.hbase.procedure2">TimeoutExecutorThread</a><<a href="org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html" title="type parameter in TimeoutExecutorThread">TEnvironment</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html" title="class in org.apache.hadoop.hbase.procedure2">TimeoutExecutorThread</a><<a href="org/apache/hadoop/hbase/procedure2/TimeoutExecutorThread.html" title="type parameter in TimeoutExecutorThread">TEnvironment</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Runs task on a period such as check for stuck workers.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/TimeoutIOException.html" title="class in org.apache.hadoop.hbase.exceptions">TimeoutIOException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/TimeoutIOException.html" title="class in org.apache.hadoop.hbase.exceptions">TimeoutIOException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Exception thrown when a blocking operation times out.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/metrics/Timer.html" title="interface in org.apache.hadoop.hbase.metrics">Timer</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/metrics/Timer.html" title="interface in org.apache.hadoop.hbase.metrics">Timer</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A metric which encompasses a <a href="org/apache/hadoop/hbase/metrics/Histogram.html" title="interface in org.apache.hadoop.hbase.metrics"><code>Histogram</code></a> and <a href="org/apache/hadoop/hbase/metrics/Meter.html" title="interface in org.apache.hadoop.hbase.metrics"><code>Meter</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/TimeRange.html" title="class in org.apache.hadoop.hbase.io">TimeRange</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents an interval of version timestamps.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Stores minimum and maximum timestamp values, it is [minimumTimestamp, maximumTimestamp] in
interval notation.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.NonSyncTimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.NonSyncTimeRangeTracker</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.SyncTimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.SyncTimeRangeTracker</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.NonSyncTimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.NonSyncTimeRangeTracker</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.Type</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/metrics/impl/TimerImpl.html" title="class in org.apache.hadoop.hbase.metrics.impl">TimerImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.SyncTimeRangeTracker.html" title="class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.SyncTimeRangeTracker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum class in org.apache.hadoop.hbase.regionserver">TimeRangeTracker.Type</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/metrics/impl/TimerImpl.html" title="class in org.apache.hadoop.hbase.metrics.impl">TimerImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Custom implementation of <a href="org/apache/hadoop/hbase/metrics/Timer.html" title="interface in org.apache.hadoop.hbase.metrics"><code>Timer</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/TimestampsFilter.html" title="class in org.apache.hadoop.hbase.filter">TimestampsFilter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/TimestampsFilter.html" title="class in org.apache.hadoop.hbase.filter">TimestampsFilter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Filter that returns only cells whose timestamp (version) is in the specified list of timestamps
(versions).</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveHFileCleaner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveHFileCleaner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">HFile cleaner that uses the timestamp of the hfile to determine if it should be deleted.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveLogCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveLogCleaner</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveLogCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveLogCleaner</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Log cleaner that uses the timestamp of the wal to determine if it should be deleted.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveMasterLocalStoreHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveMasterLocalStoreHFileCleaner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveMasterLocalStoreHFileCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveMasterLocalStoreHFileCleaner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Master local storage HFile cleaner that uses the timestamp of the HFile to determine if it should
be deleted.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveMasterLocalStoreWALCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveMasterLocalStoreWALCleaner</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveMasterLocalStoreWALCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveMasterLocalStoreWALCleaner</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Master local storage WAL cleaner that uses the timestamp of the WAL file to determine if it
should be deleted.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveProcedureWALCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveProcedureWALCleaner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/cleaner/TimeToLiveProcedureWALCleaner.html" title="class in org.apache.hadoop.hbase.master.cleaner">TimeToLiveProcedureWALCleaner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Since 2.3.0, will be removed in 4.0.0.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TinyLfuBlockCache</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.html" title="class in org.apache.hadoop.hbase.io.hfile">TinyLfuBlockCache</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A block cache that is memory-aware using <a href="org/apache/hadoop/hbase/io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io"><code>HeapSize</code></a>, memory bounded using the W-TinyLFU
eviction algorithm, and concurrent.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.CachedBlockView.html" title="class in org.apache.hadoop.hbase.io.hfile">TinyLfuBlockCache.CachedBlockView</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/TokenProvider.html" title="class in org.apache.hadoop.hbase.security.token">TokenProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/TinyLfuBlockCache.CachedBlockView.html" title="class in org.apache.hadoop.hbase.io.hfile">TinyLfuBlockCache.CachedBlockView</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/TokenProvider.html" title="class in org.apache.hadoop.hbase.security.token">TokenProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Provides a service for obtaining authentication tokens via the <code>AuthenticationProtos</code>
AuthenticationService coprocessor service.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/TokenUtil.html" title="class in org.apache.hadoop.hbase.security.token">TokenUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/TokenUtil.html" title="class in org.apache.hadoop.hbase.security.token">TokenUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility methods for obtaining authentication tokens.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenModel.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenModel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenModel.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenModel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The data and business logic for the top screen.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenPresenter.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenPresenter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenPresenter.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenPresenter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The presentation logic for the top screen.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenView</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/screen/top/TopScreenView.html" title="class in org.apache.hadoop.hbase.hbtop.screen.top">TopScreenView</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The screen that provides a dynamic real-time view for the HBase metrics.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/trace/TraceUtil.html" title="class in org.apache.hadoop.hbase.trace">TraceUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="interface in org.apache.hadoop.hbase.trace">TraceUtil.ThrowingCallable</a><<a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="type parameter in TraceUtil.ThrowingCallable">R</a>,<wbr><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="type parameter in TraceUtil.ThrowingCalla [...]
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/trace/TraceUtil.html" title="class in org.apache.hadoop.hbase.trace">TraceUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="interface in org.apache.hadoop.hbase.trace">TraceUtil.ThrowingCallable</a><<a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="type parameter in TraceUtil.ThrowingCallable">R</a>,<wbr><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingCallable.html" title="type parameter in TraceUtil.ThrowingCallab [...]
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">A <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/Callable.html" title="class or interface in java.util.concurrent" class="external-link"><code>Callable</code></a> that may also throw.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingRunnable.html" title="interface in org.apache.hadoop.hbase.trace">TraceUtil.ThrowingRunnable</a><<a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingRunnable.html" title="type parameter in TraceUtil.ThrowingRunnable">T</a> extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" title="class or interf [...]
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingRunnable.html" title="interface in org.apache.hadoop.hbase.trace">TraceUtil.ThrowingRunnable</a><<a href="org/apache/hadoop/hbase/trace/TraceUtil.ThrowingRunnable.html" title="type parameter in TraceUtil.ThrowingRunnable">T</a> extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Throwable.html" title="class or inter [...]
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link"><code>Runnable</code></a> that may also throw.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">TransitPeerSyncReplicationStateProcedure</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/TransitPeerSyncReplicationStateProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">TransitPeerSyncReplicationStateProcedure</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure for transit current sync replication state for a synchronous replication peer.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">TransitRegionStateProcedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">TransitRegionStateProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure to deal with the state transition of a region.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.TransitionType.html" title="enum class in org.apache.hadoop.hbase.master.assignment">TransitRegionStateProcedure.TransitionType</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Triple.html" title="class in org.apache.hadoop.hbase.util">Triple</a><<a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">A</a>,<wbr><a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">B</a>,<wbr><a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">C</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/master/assignment/TransitRegionStateProcedure.TransitionType.html" title="enum class in org.apache.hadoop.hbase.master.assignment">TransitRegionStateProcedure.TransitionType</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Triple.html" title="class in org.apache.hadoop.hbase.util">Triple</a><<a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">A</a>,<wbr><a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">B</a>,<wbr><a href="org/apache/hadoop/hbase/util/Triple.html" title="type parameter in Triple">C</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class to manage a triple.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TruncateRegionProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">TruncateRegionProcedure</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">TruncateTableProcedure</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TruncateRegionProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">TruncateRegionProcedure</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/TrustManagerException.html" title="class in org.apache.hadoop.hbase.exceptions">TrustManagerException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TsvImporterMapper</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/procedure/TruncateTableProcedure.html" title="class in org.apache.hadoop.hbase.master.procedure">TruncateTableProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/TrustManagerException.html" title="class in org.apache.hadoop.hbase.exceptions">TrustManagerException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TsvImporterMapper</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Write table content out to files in hdfs.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TsvImporterTextMapper</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/TsvImporterTextMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">TsvImporterTextMapper</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Write table content out to map output files.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/TwoPhaseProcedure.html" title="class in org.apache.hadoop.hbase.procedure2">TwoPhaseProcedure</a><<a href="org/apache/hadoop/hbase/procedure2/TwoPhaseProcedure.html" title="type parameter in TwoPhaseProcedure">TEnvironment</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">UnassignProcedure</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/TwoPhaseProcedure.html" title="class in org.apache.hadoop.hbase.procedure2">TwoPhaseProcedure</a><<a href="org/apache/hadoop/hbase/procedure2/TwoPhaseProcedure.html" title="type parameter in TwoPhaseProcedure">TEnvironment</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/assignment/UnassignProcedure.html" title="class in org.apache.hadoop.hbase.master.assignment">UnassignProcedure</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Do not use any more.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.html" title="class in org.apache.hadoop.hbase.regionserver.handler">UnassignRegionHandler</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.html" title="class in org.apache.hadoop.hbase.regionserver.handler">UnassignRegionHandler</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles closing of a region on a region server.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/UncompressedBlockSizePredicator.html" title="class in org.apache.hadoop.hbase.io.hfile">UncompressedBlockSizePredicator</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/hfile/UncompressedBlockSizePredicator.html" title="class in org.apache.hadoop.hbase.io.hfile">UncompressedBlockSizePredicator</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This BlockCompressedSizePredicator implementation doesn't actually performs any predicate and
simply returns <b>true</b> on <code>shouldFinishBlock</code>.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/UnexpectedStateException.html" title="class in org.apache.hadoop.hbase.exceptions">UnexpectedStateException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union2.html" title="class in org.apache.hadoop.hbase.types">Union2</a><<a href="org/apache/hadoop/hbase/types/Union2.html" title="type parameter in Union2">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union2.html" title="type parameter in Union2">B</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/UnexpectedStateException.html" title="class in org.apache.hadoop.hbase.exceptions">UnexpectedStateException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union2.html" title="class in org.apache.hadoop.hbase.types">Union2</a><<a href="org/apache/hadoop/hbase/types/Union2.html" title="type parameter in Union2">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union2.html" title="type parameter in Union2">B</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The <code>Union</code> family of <a href="org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed set of <code>Object</code>s.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union3.html" title="class in org.apache.hadoop.hbase.types">Union3</a><<a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">B</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">C</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union3.html" title="class in org.apache.hadoop.hbase.types">Union3</a><<a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">B</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union3.html" title="type parameter in Union3">C</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The <code>Union</code> family of <a href="org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed collection of Objects.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union4.html" title="class in org.apache.hadoop.hbase.types">Union4</a><<a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">B</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">C</a>,<wbr><a href="org [...]
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/types/Union4.html" title="class in org.apache.hadoop.hbase.types">Union4</a><<a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">A</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">B</a>,<wbr><a href="org/apache/hadoop/hbase/types/Union4.html" title="type parameter in Union4">C</a>,<wbr><a href="org/ [...]
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The <code>Union</code> family of <a href="org/apache/hadoop/hbase/types/DataType.html" title="interface in org.apache.hadoop.hbase.types"><code>DataType</code></a>s encode one of a fixed collection of Objects.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/UnknownProtocolException.html" title="class in org.apache.hadoop.hbase.exceptions">UnknownProtocolException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/UnknownProtocolException.html" title="class in org.apache.hadoop.hbase.exceptions">UnknownProtocolException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">An error requesting an RPC protocol that the server is not serving.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/UnknownRegionException.html" title="class in org.apache.hadoop.hbase">UnknownRegionException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/UnknownRegionException.html" title="class in org.apache.hadoop.hbase">UnknownRegionException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when we are asked to operate on a region we know nothing about.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/UnknownScannerException.html" title="class in org.apache.hadoop.hbase">UnknownScannerException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/UnknownScannerException.html" title="class in org.apache.hadoop.hbase">UnknownScannerException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown if a region server is passed an unknown scanner ID.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnknownServiceException.html" title="class in org.apache.hadoop.hbase.ipc">UnknownServiceException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/snapshot/UnknownSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">UnknownSnapshotException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnknownServiceException.html" title="class in org.apache.hadoop.hbase.ipc">UnknownServiceException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/snapshot/UnknownSnapshotException.html" title="class in org.apache.hadoop.hbase.snapshot">UnknownSnapshotException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Exception thrown when we get a request for a snapshot we don't recognize.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/UnsafeAccess.html" title="class in org.apache.hadoop.hbase.util">UnsafeAccess</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCellCodecException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCellCodecException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCompressionCodecException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCompressionCodecException</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/UnsafeAccess.html" title="class in org.apache.hadoop.hbase.util">UnsafeAccess</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCellCodecException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCellCodecException</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCryptoException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCryptoException</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCompressionCodecException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCompressionCodecException</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/master/region/UpdateMasterRegion.html" title="interface in org.apache.hadoop.hbase.master.region">UpdateMasterRegion</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">UpdatePeerConfigProcedure</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/UnsupportedCryptoException.html" title="class in org.apache.hadoop.hbase.ipc">UnsupportedCryptoException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/master/region/UpdateMasterRegion.html" title="interface in org.apache.hadoop.hbase.master.region">UpdateMasterRegion</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/replication/UpdatePeerConfigProcedure.html" title="class in org.apache.hadoop.hbase.master.replication">UpdatePeerConfigProcedure</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The procedure for updating the config for a replication peer.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Wrapper to abstract out usage of user and group information in HBase.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.SecureHadoopUser.html" title="class in org.apache.hadoop.hbase.security">User.SecureHadoopUser</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.SecureHadoopUser.html" title="class in org.apache.hadoop.hbase.security">User.SecureHadoopUser</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Bridges <code>User</code> invocations to underlying calls to
<code>UserGroupInformation</code> for secure Hadoop 0.20 and versions
0.21 and above.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.TestingGroups.html" title="class in org.apache.hadoop.hbase.security">User.TestingGroups</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/UserMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/User.TestingGroups.html" title="class in org.apache.hadoop.hbase.security">User.TestingGroups</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/UserMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Encapsulates per-user load metrics.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/UserMetrics.ClientMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics.ClientMetrics</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.ClientMetricsImpl.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder.ClientMetricsImpl</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/UserMetrics.ClientMetrics.html" title="interface in org.apache.hadoop.hbase">UserMetrics.ClientMetrics</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.UserMetricsImpl.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder.UserMetricsImpl</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.ClientMetricsImpl.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder.ClientMetricsImpl</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html" title="class in org.apache.hadoop.hbase.hbtop.mode">UserModeStrategy</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/UserMetricsBuilder.UserMetricsImpl.html" title="class in org.apache.hadoop.hbase">UserMetricsBuilder.UserMetricsImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/hbtop/mode/UserModeStrategy.html" title="class in org.apache.hadoop.hbase.hbtop.mode">UserModeStrategy</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implementation for <a href="org/apache/hadoop/hbase/hbtop/mode/ModeStrategy.html" title="interface in org.apache.hadoop.hbase.hbtop.mode"><code>ModeStrategy</code></a> for User Mode.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">UserPermission consists of a user name and a permission.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/UserProvider.html" title="class in org.apache.hadoop.hbase.security">UserProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/UserProvider.html" title="class in org.apache.hadoop.hbase.security">UserProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Provide an instance of a user.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/UserQuotaState.html" title="class in org.apache.hadoop.hbase.quotas">UserQuotaState</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/quotas/UserQuotaState.html" title="class in org.apache.hadoop.hbase.quotas">UserQuotaState</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">In-Memory state of the user quotas</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">UserScanQueryMatcher</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">UserScanQueryMatcher</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Query matcher for user scan.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/ValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ValueFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/ValueFilter.html" title="class in org.apache.hadoop.hbase.filter">ValueFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This filter is used to filter based on column value.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ValueRewritingObserver</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ValueRewritingObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ValueRewritingObserver</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This RegionObserver replaces the values of Puts from one value to another on compaction.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This map-only job compares the data from a local table with a remote one.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication.Verifier</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication.Verifier</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Map-only comparator for 2 tables</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.Counters.html" title="enum class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication.Verifier.Counters</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplicationRecompareRunnable.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplicationRecompareRunnable</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html" title="class in org.apache.hadoop.hbase.replication">VerifyWALEntriesReplicationEndpoint</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplication.Verifier.Counters.html" title="enum class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplication.Verifier.Counters</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/replication/VerifyReplicationRecompareRunnable.html" title="class in org.apache.hadoop.hbase.mapreduce.replication">VerifyReplicationRecompareRunnable</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/VerifyWALEntriesReplicationEndpoint.html" title="class in org.apache.hadoop.hbase.replication">VerifyWALEntriesReplicationEndpoint</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A dummy <a href="org/apache/hadoop/hbase/replication/ReplicationEndpoint.html" title="interface in org.apache.hadoop.hbase.replication"><code>ReplicationEndpoint</code></a> that replicates nothing.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/VersionedSegmentsList.html" title="class in org.apache.hadoop.hbase.regionserver">VersionedSegmentsList</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A list of segment managers coupled with the version of the memstore (version at the time it was
created).</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/VersionInfo.html" title="class in org.apache.hadoop.hbase.util">VersionInfo</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/VersionInfo.html" title="class in org.apache.hadoop.hbase.util">VersionInfo</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class finds the Version information for HBase.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.html" title="class in org.apache.hadoop.hbase.client">VersionInfoUtil</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.html" title="class in org.apache.hadoop.hbase.client">VersionInfoUtil</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Class to help with parsing the version info.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html" title="interface in org.apache.hadoop.hbase.client">VersionInfoUtil.ServiceCallFunction</a><<a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html" title="type parameter in VersionInfoUtil.ServiceCallFunction">T1</a>,<wbr><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html" [...]
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html" title="interface in org.apache.hadoop.hbase.client">VersionInfoUtil.ServiceCallFunction</a><<a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html" title="type parameter in VersionInfoUtil.ServiceCallFunction">T1</a>,<wbr><a href="org/apache/hadoop/hbase/client/VersionInfoUtil.ServiceCallFunction.html [...]
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">We intend to use the local version for service call shortcut(s), so we use an interface
compatible with a typical service call, with 2 args, return type, and an exception type.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/VersionModel.html" title="class in org.apache.hadoop.hbase.rest.model">VersionModel</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/model/VersionModel.html" title="class in org.apache.hadoop.hbase.rest.model">VersionModel</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A representation of the collection of versions of the REST gateway software components.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/VersionResource.html" title="class in org.apache.hadoop.hbase.rest">VersionResource</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/rest/VersionResource.html" title="class in org.apache.hadoop.hbase.rest">VersionResource</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implements REST software version reporting</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityClient.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityClient</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityClient.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityClient</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility client for doing visibility labels admin operations.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityConstants.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityConstants</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityController.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityController</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityConstants.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityConstants</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityController.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityController</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Coprocessor that has both the MasterObserver and RegionObserver implemented that supports in
visibility labels</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityController.DeleteVersionVisibilityExpressionFilter.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityController.DeleteVersionVisibilityExpressionFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityControllerNotReadyException.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityControllerNotReadyException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityExpEvaluator.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityExpEvaluator</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityController.DeleteVersionVisibilityExpressionFilter.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityController.DeleteVersionVisibilityExpressionFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityControllerNotReadyException.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityControllerNotReadyException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityExpEvaluator.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityExpEvaluator</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">During the read (ie.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapreduce/VisibilityExpressionResolver.html" title="interface in org.apache.hadoop.hbase.mapreduce">VisibilityExpressionResolver</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/mapreduce/VisibilityExpressionResolver.html" title="interface in org.apache.hadoop.hbase.mapreduce">VisibilityExpressionResolver</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface to convert visibility expressions into Tags for storing along with Cells in HFiles.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelFilter.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelFilter.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This Filter checks the visibility expression with each KV against visibility labels associated
with the scan.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelOrdinalProvider.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelOrdinalProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelOrdinalProvider.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelOrdinalProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelsCache.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsCache</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Maintains the cache for visibility labels and also uses the zookeeper to update the labels in the
system.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelService</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility">VisibilityLabelService</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">The interface which deals with visibility labels and user auths admin service as well as the cell
visibility expression storage part and read time evaluation.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelServiceManager.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelServiceManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelServiceManager.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelServiceManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Manages singleton instance of <a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelService.html" title="interface in org.apache.hadoop.hbase.security.visibility"><code>VisibilityLabelService</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelsValidator.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsValidator</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityLabelsValidator.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityLabelsValidator</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A simple validator that validates the labels passed</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityNewVersionBehaivorTracker</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityNewVersionBehaivorTracker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Similar to MvccSensitiveTracker but tracks the visibility expression also before deciding if a
Cell can be considered deleted</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.TagInfo.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityNewVersionBehaivorTracker.TagInfo</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityReplication.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityReplication</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityNewVersionBehaivorTracker.TagInfo.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityNewVersionBehaivorTracker.TagInfo</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityReplication.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityReplication</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A RegionServerObserver impl that provides the custom VisibilityReplicationEndpoint.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityReplicationEndpoint.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityReplicationEndpoint</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityScanDeleteTracker</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityReplicationEndpoint.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityReplicationEndpoint</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityScanDeleteTracker.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityScanDeleteTracker</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Similar to ScanDeletTracker but tracks the visibility expression also before deciding if a Cell
can be considered deleted</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityUtils.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityUtils</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/VisibilityUtils.html" title="class in org.apache.hadoop.hbase.security.visibility">VisibilityUtils</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility method to support visibility</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A Write Ahead Log (WAL) provides service for reading, writing waledits.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class that lets us keep track of the edit with it's key.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Get notification of WAL events.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum class in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.RollRequestReason.html" title="enum class in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener.RollRequestReason</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">The reason for the log roll request.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Compression in this class is lifted off Compressor/KeyValueCompression.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.BaosAndCompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.BaosAndCompressor</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.ByteStringCompressor.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.ByteStringCompressor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.ByteStringUncompressor.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.ByteStringUncompressor</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvDecoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.CompressedKvDecoder</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.BaosAndCompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.BaosAndCompressor</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvEncoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.CompressedKvEncoder</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.ByteStringCompressor.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.ByteStringCompressor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.ByteStringUncompressor.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.ByteStringUncompressor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvDecoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.CompressedKvDecoder</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.EnsureKvEncoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.EnsureKvEncoder</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.CompressedKvEncoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.CompressedKvEncoder</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.NoneCompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.NoneCompressor</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.EnsureKvEncoder.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.EnsureKvEncoder</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.NoneUncompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.NoneUncompressor</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.NoneCompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.NoneCompressor</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.StatelessUncompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.StatelessUncompressor</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.NoneUncompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.NoneUncompressor</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/WALCellFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALCellFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCellCodec.StatelessUncompressor.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCellCodec.StatelessUncompressor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/WALCellFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALCellFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A filter for WAL entry cells before being sent over to replication.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALClosedException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALClosedException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALClosedException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALClosedException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when <a href="org/apache/hadoop/hbase/regionserver/LogRoller.html" title="class in org.apache.hadoop.hbase.regionserver"><code>LogRoller</code></a> try to roll writer but the WAL already was closed.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALCoprocessor.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALCoprocessor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALCoprocessor.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALCoprocessor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">WALCoprocessor don't support loading services using <a href="org/apache/hadoop/hbase/Coprocessor.html#getServices()"><code>Coprocessor.getServices()</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALCoprocessorEnvironment</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCoprocessorHost</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALCoprocessorEnvironment.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALCoprocessorEnvironment</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCoprocessorHost</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implements the coprocessor environment and runtime support for coprocessors loaded within a
<a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal"><code>WAL</code></a>.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.WALEnvironment.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCoprocessorHost.WALEnvironment</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALCoprocessorHost.WALEnvironment.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALCoprocessorHost.WALEnvironment</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Encapsulation of the environment of each coprocessor</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALDecompressionBoundedDelegatingInputStream.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALDecompressionBoundedDelegatingInputStream</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALDecompressionBoundedDelegatingInputStream.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALDecompressionBoundedDelegatingInputStream</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class is only used by WAL ValueCompressor for decompression.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Used in HBase's transaction log (WAL) to represent a collection of edits (Cell/KeyValue objects)
that came in as a single transaction.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALEditInternalHelper.html" title="class in org.apache.hadoop.hbase.wal">WALEditInternalHelper</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALEditInternalHelper.html" title="class in org.apache.hadoop.hbase.wal">WALEditInternalHelper</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A helper class so we can call some package private methods of <a href="org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal"><code>WALEdit</code></a> from other
packages.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Holds a batch of WAL entries to replicate, along with some statistics</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/WALEntryFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALEntryFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/WALEntryFilter.html" title="interface in org.apache.hadoop.hbase.replication">WALEntryFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A Filter for WAL entries before being sent over to replication.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryFilterRetryableException.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryFilterRetryableException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryFilterRetryableException.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryFilterRetryableException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">This exception should be thrown from any wal filter when the filter is expected to recover from
the failures and it wants the replication to backup till it fails.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntrySinkFilter.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALEntrySinkFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntrySinkFilter.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALEntrySinkFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Implementations are installed on a Replication Sink called from inside
ReplicationSink#replicateEntries to filter replicated WALEntries based off WALEntry attributes.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Streaming access to WAL entries.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.HasNext.html" title="enum class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream.HasNext</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALEventTrackerListener.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALEventTrackerListener</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/wal/WALEventTrackerListener.WalState.html" title="enum class in org.apache.hadoop.hbase.regionserver.wal">WALEventTrackerListener.WalState</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerPayload.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerPayload</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerQueueService.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerQueueService</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.HasNext.html" title="enum class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream.HasNext</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALEventTrackerListener.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALEventTrackerListener</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/regionserver/wal/WALEventTrackerListener.WalState.html" title="enum class in org.apache.hadoop.hbase.regionserver.wal">WALEventTrackerListener.WalState</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerPayload.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerPayload</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerTableAccessor.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerTableAccessor</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerQueueService.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerQueueService</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/waleventtracker/WALEventTrackerTableCreator.html" title="class in org.apache.hadoop.hbase.master.waleventtracker">WALEventTrackerTableCreator</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/namequeues/WALEventTrackerTableAccessor.html" title="class in org.apache.hadoop.hbase.namequeues">WALEventTrackerTableAccessor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/waleventtracker/WALEventTrackerTableCreator.html" title="class in org.apache.hadoop.hbase.master.waleventtracker">WALEventTrackerTableCreator</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">WALEventTracker Table creation to be used by HMaster</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALFactory.html" title="class in org.apache.hadoop.hbase.wal">WALFactory</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Entry point for users of the Write Ahead Log.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/wal/WALFactory.Providers.html" title="enum class in org.apache.hadoop.hbase.wal">WALFactory.Providers</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/wal/WALFactory.Providers.html" title="enum class in org.apache.hadoop.hbase.wal">WALFactory.Providers</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Maps between configuration names for providers and implementation classes.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver">WALFileLengthProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Used by replication to prevent replicating unacked log entries.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALHeaderEOFException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALHeaderEOFException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALHeaderEOFException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALHeaderEOFException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">A special EOFException to indicate that the EOF happens when we read the header of a WAL file.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Simple <code>InputFormat</code> for <a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal"><code>WAL</code></a> files.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALKeyRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALKeyRecordReader</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALKeyRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALKeyRecordReader</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">handler for non-deprecated WALKey version.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALRecordReader</a><<a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALRecordReader.html" title="type parameter in WALInputFormat.WALRecordReader">K</a> extends <a href="org/apache/hadoop/hbase/wal/WALKey.html" title="interface in org.apache.hadoop.hbase [...]
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALRecordReader.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALRecordReader</a><<a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALRecordReader.html" title="type parameter in WALInputFormat.WALRecordReader">K</a> extends <a href="org/apache/hadoop/hbase/wal/WALKey.html" title="interface in org.apache.hadoop.hbase. [...]
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<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>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALSplit</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALInputFormat.WALSplit.html" title="class in org.apache.hadoop.hbase.mapreduce">WALInputFormat.WALSplit</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block"><code>InputSplit</code> for <a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal"><code>WAL</code></a> files.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALKey.html" title="interface in org.apache.hadoop.hbase.wal">WALKey</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALKey.html" title="interface in org.apache.hadoop.hbase.wal">WALKey</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Key for WAL Entry.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALKeyImpl.html" title="class in org.apache.hadoop.hbase.wal">WALKeyImpl</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Default implementation of Key for an Entry in the WAL.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/WALLink.html" title="class in org.apache.hadoop.hbase.io">WALLink</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/WALLink.html" title="class in org.apache.hadoop.hbase.io">WALLink</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">WALLink describes a link to a WAL.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALObserver</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coprocessor/WALObserver.html" title="interface in org.apache.hadoop.hbase.coprocessor">WALObserver</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">It's provided to have a way for coprocessors to observe, rewrite, or skip WALEdits as they are
being written to the WAL.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal">WALPerformanceEvaluation</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal">WALPerformanceEvaluation</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class runs performance benchmarks for <a href="org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal"><code>WAL</code></a>.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WALPerformanceEvaluationUtil.html" title="class in org.apache.hadoop.hbase.util">WALPerformanceEvaluationUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WALPerformanceEvaluationUtil.html" title="class in org.apache.hadoop.hbase.util">WALPerformanceEvaluationUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class contains code copied from HBaseTestingUtil and its super classes required by
WALPerformanceEvaluation.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A tool to replay WAL files as a M/R job.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum class in org.apache.hadoop.hbase.mapreduce">WALPlayer.Counter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.Counter.html" title="enum class in org.apache.hadoop.hbase.mapreduce">WALPlayer.Counter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enum for map metrics.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.WALKeyValueMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer.WALKeyValueMapper</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.WALKeyValueMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer.WALKeyValueMapper</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A mapper that just writes out KeyValues.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.WALMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer.WALMapper</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/mapreduce/WALPlayer.WALMapper.html" title="class in org.apache.hadoop.hbase.mapreduce">WALPlayer.WALMapper</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A mapper that writes out <a href="org/apache/hadoop/hbase/client/Mutation.html" title="class in org.apache.hadoop.hbase.client"><code>Mutation</code></a> to be directly applied to a running HBase instance.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALPrettyPrinter.html" title="class in org.apache.hadoop.hbase.wal">WALPrettyPrinter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALPrettyPrinter.html" title="class in org.apache.hadoop.hbase.wal">WALPrettyPrinter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">WALPrettyPrinter prints the contents of a given WAL with a variety of options affecting
formatting and extent of content.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureMap.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureMap</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureMap.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureMap</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Since 2.3.0, will be removed in 4.0.0.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/region/WALProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region">WALProcedurePrettyPrinter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/region/WALProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region">WALProcedurePrettyPrinter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A tool to dump the procedures in the WAL files.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.html" title="class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Since 2.3.0, will be removed in 4.0.0.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><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></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.PushType.html" title="enum class in org.apache.hadoop.hbase.procedure2.store.wal">WALProcedureStore.PushType</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><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></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">The Write Ahead Log (WAL) stores all durable edits to the HRegion.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.AsyncWriter.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.AsyncWriter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.Writer.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.Writer</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.AsyncWriter.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.AsyncWriter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.WriterBase.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.WriterBase</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.Writer.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.Writer</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALProvider.WriterBase.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider.WriterBase</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Split RegionServer WAL files.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/wal/WALSplitter.CorruptedLogFileException.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.CorruptedLogFileException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.PipelineController.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.PipelineController</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/wal/WALSplitter.CorruptedLogFileException.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.CorruptedLogFileException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.PipelineController.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.PipelineController</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Contains some methods to control WAL-entries producer / consumer interactions</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.SplitWALResult.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.SplitWALResult</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitter.SplitWALResult.html" title="class in org.apache.hadoop.hbase.wal">WALSplitter.SplitWALResult</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Data structure returned as result by #splitWAL(FileStatus, CancelableProgressable).</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/handler/WALSplitterHandler.html" title="class in org.apache.hadoop.hbase.regionserver.handler">WALSplitterHandler</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/handler/WALSplitterHandler.html" title="class in org.apache.hadoop.hbase.regionserver.handler">WALSplitterHandler</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">since 2.4.0 and in 3.0.0, to be removed in 4.0.0, replaced by procedure-based
distributed WAL splitter, see SplitWALManager</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitUtil.html" title="class in org.apache.hadoop.hbase.wal">WALSplitUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitUtil.html" title="class in org.apache.hadoop.hbase.wal">WALSplitUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This class provides static methods to support WAL splitting related works</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitUtil.MutationReplay.html" title="class in org.apache.hadoop.hbase.wal">WALSplitUtil.MutationReplay</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALSplitUtil.MutationReplay.html" title="class in org.apache.hadoop.hbase.wal">WALSplitUtil.MutationReplay</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A struct used by getMutationsFromWALEntry</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALStreamReader.html" title="interface in org.apache.hadoop.hbase.wal">WALStreamReader</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALStreamReader.html" title="interface in org.apache.hadoop.hbase.wal">WALStreamReader</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A one way WAL reader, without reset and seek support.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALSyncTimeoutIOException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALSyncTimeoutIOException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/wal/WALSyncTimeoutIOException.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALSyncTimeoutIOException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when <a href="org/apache/hadoop/hbase/wal/WAL.html#sync()"><code>WAL.sync()</code></a> timeout.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.html" title="interface in org.apache.hadoop.hbase.wal">WALTailingReader</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.html" title="interface in org.apache.hadoop.hbase.wal">WALTailingReader</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">A WAL reader which is designed for be able to tailing the WAL file which is currently being
written.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.Result.html" title="class in org.apache.hadoop.hbase.wal">WALTailingReader.Result</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.State.html" title="enum class in org.apache.hadoop.hbase.wal">WALTailingReader.State</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALUtil.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALUtil</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.Result.html" title="class in org.apache.hadoop.hbase.wal">WALTailingReader.Result</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/wal/WALTailingReader.State.html" title="enum class in org.apache.hadoop.hbase.wal">WALTailingReader.State</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/regionserver/wal/WALUtil.html" title="class in org.apache.hadoop.hbase.regionserver.wal">WALUtil</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Helper methods to ease Region Server integration with the Write Ahead Log (WAL).</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="class in org.apache.hadoop.hbase.util">WeakObjectPool</a><<a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="type parameter in WeakObjectPool">K</a>,<wbr><a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="type parameter in WeakObjectPool">V</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="class in org.apache.hadoop.hbase.util">WeakObjectPool</a><<a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="type parameter in WeakObjectPool">K</a>,<wbr><a href="org/apache/hadoop/hbase/util/WeakObjectPool.html" title="type parameter in WeakObjectPool">V</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A <code>WeakReference</code> based shared object pool.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WeightedMovingAverage</a><<a href="org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="type parameter in WeightedMovingAverage">T</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WeightedMovingAverage</a><<a href="org/apache/hadoop/hbase/util/WeightedMovingAverage.html" title="type parameter in WeightedMovingAverage">T</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<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>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/WhileMatchFilter.html" title="class in org.apache.hadoop.hbase.filter">WhileMatchFilter</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/filter/WhileMatchFilter.html" title="class in org.apache.hadoop.hbase.filter">WhileMatchFilter</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A wrapper filter that returns true from <a href="org/apache/hadoop/hbase/filter/WhileMatchFilter.html#filterAllRemaining()"><code>WhileMatchFilter.filterAllRemaining()</code></a> as soon as the wrapped
filters <a href="org/apache/hadoop/hbase/filter/Filter.html#filterRowKey(org.apache.hadoop.hbase.Cell)"><code>Filter.filterRowKey(Cell)</code></a>,
<a href="org/apache/hadoop/hbase/filter/Filter.html#filterCell(org.apache.hadoop.hbase.Cell)"><code>Filter.filterCell(org.apache.hadoop.hbase.Cell)</code></a>,
<a href="org/apache/hadoop/hbase/filter/Filter.html#filterRow()"><code>Filter.filterRow()</code></a> or
<a href="org/apache/hadoop/hbase/filter/Filter.html#filterAllRemaining()"><code>Filter.filterAllRemaining()</code></a> methods returns true.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WindowMovingAverage</a><<a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="type parameter in WindowMovingAverage">T</a>></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="class in org.apache.hadoop.hbase.util">WindowMovingAverage</a><<a href="org/apache/hadoop/hbase/util/WindowMovingAverage.html" title="type parameter in WindowMovingAverage">T</a>></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Instead of calculate a whole time average, this class focus on the last N.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/WorkerAssigner.html" title="class in org.apache.hadoop.hbase.master">WorkerAssigner</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/WorkerAssigner.html" title="class in org.apache.hadoop.hbase.master">WorkerAssigner</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">help assign and release a worker for each remote task.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/WrapperAsyncFSOutput.html" title="class in org.apache.hadoop.hbase.io.asyncfs">WrapperAsyncFSOutput</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/asyncfs/WrapperAsyncFSOutput.html" title="class in org.apache.hadoop.hbase.io.asyncfs">WrapperAsyncFSOutput</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">An <a href="org/apache/hadoop/hbase/io/asyncfs/AsyncFSOutput.html" title="interface in org.apache.hadoop.hbase.io.asyncfs"><code>AsyncFSOutput</code></a> wraps a <code>FSDataOutputStream</code>.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Writables.html" title="class in org.apache.hadoop.hbase.util">Writables</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/Writables.html" title="class in org.apache.hadoop.hbase.util">Writables</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class with methods for manipulating Writable objects</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/io/WritableWithSize.html" title="interface in org.apache.hadoop.hbase.io">WritableWithSize</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/io/WritableWithSize.html" title="interface in org.apache.hadoop.hbase.io">WritableWithSize</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">An optional interface to 'size' writables.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">WriteHeavyIncrementObserver</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">WriteHeavyIncrementObserver</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">An example for implementing a counter that reads is much less than writes, i.e, write heavy.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">WriteRequestCostFunction</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">WriteRequestCostFunction</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Compute the cost of total number of write requests.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/tool/WriteSinkCoprocessor.html" title="class in org.apache.hadoop.hbase.tool">WriteSinkCoprocessor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/tool/WriteSinkCoprocessor.html" title="class in org.apache.hadoop.hbase.tool">WriteSinkCoprocessor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">
This coprocessor 'shallows' all the writes.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/WrongRegionException.html" title="class in org.apache.hadoop.hbase.regionserver">WrongRegionException</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/regionserver/WrongRegionException.html" title="class in org.apache.hadoop.hbase.regionserver">WrongRegionException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown when a request contains a key which is not part of this region</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/client/WrongRowIOException.html" title="class in org.apache.hadoop.hbase.client">WrongRowIOException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/WrongVersionException.html" title="class in org.apache.hadoop.hbase.ipc">WrongVersionException</a></div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/client/WrongRowIOException.html" title="class in org.apache.hadoop.hbase.client">WrongRowIOException</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab5"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/X509Exception.html" title="class in org.apache.hadoop.hbase.exceptions">X509Exception</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ipc/WrongVersionException.html" title="class in org.apache.hadoop.hbase.ipc">WrongVersionException</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab5"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/exceptions/X509Exception.html" title="class in org.apache.hadoop.hbase.exceptions">X509Exception</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">This file has been copied from the Apache ZooKeeper project.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/crypto/tls/X509Util.html" title="class in org.apache.hadoop.hbase.io.crypto.tls">X509Util</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/crypto/tls/X509Util.html" title="class in org.apache.hadoop.hbase.io.crypto.tls">X509Util</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility code for X509 handling Default cipher suites: Performance testing done by Facebook
engineers shows that on Intel x86_64 machines, Java9 performs better with GCM and Java8 performs
better with CBC, so these seem like reasonable defaults.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/io/crypto/tls/X509Util.ClientAuth.html" title="enum class in org.apache.hadoop.hbase.io.crypto.tls">X509Util.ClientAuth</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/io/crypto/tls/X509Util.ClientAuth.html" title="enum class in org.apache.hadoop.hbase.io.crypto.tls">X509Util.ClientAuth</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enum specifying the client auth requirement of server-side TLS sockets created by this
X509Util.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/YammerHistogramUtils.html" title="class in org.apache.hadoop.hbase.util">YammerHistogramUtils</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/util/YammerHistogramUtils.html" title="class in org.apache.hadoop.hbase.util">YammerHistogramUtils</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility functions for working with Yammer Metrics.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/YouAreDeadException.html" title="class in org.apache.hadoop.hbase">YouAreDeadException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/YouAreDeadException.html" title="class in org.apache.hadoop.hbase">YouAreDeadException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">This exception is thrown by the master when a region server reports and is already being
processed as dead.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAclReset.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAclReset</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAclReset.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAclReset</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">You may add the jaas.conf option -Djava.security.auth.login.config=/PATH/jaas.conf You may also
specify -D to set options "hbase.zookeeper.quorum" (it should be in hbase-site.xml)
"zookeeper.znode.parent" (it should be in hbase-site.xml) Use -set-acls to set the ACLs, no
option to erase ACLs</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAuthentication.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAuthentication</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAuthentication.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAuthentication</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Provides ZooKeeper authentication services for both client and server processes.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAuthentication.JaasConfiguration.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAuthentication.JaasConfiguration</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKAuthentication.JaasConfiguration.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKAuthentication.JaasConfiguration</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">A JAAS configuration that defines the login modules that we want to use for ZooKeeper login.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKClusterId.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKClusterId</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKClusterId.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKClusterId</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Publishes and synchronizes a unique identifier specific to a given HBase cluster.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKConfig.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKConfig</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKConfig.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKConfig</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility methods for reading, and building the ZooKeeper configuration.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKConfig.ZKClusterKey.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKConfig.ZKClusterKey</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.html" title="class in org.apache.hadoop.hbase.client">ZKConnectionRegistry</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKConfig.ZKClusterKey.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKConfig.ZKClusterKey</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.html" title="class in org.apache.hadoop.hbase.client">ZKConnectionRegistry</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">As of 2.6.0, replaced by <a href="org/apache/hadoop/hbase/client/RpcConnectionRegistry.html" title="class in org.apache.hadoop.hbase.client"><code>RpcConnectionRegistry</code></a>, which is the default
connection mechanism as of 3.0.0.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.Converter.html" title="interface in org.apache.hadoop.hbase.client">ZKConnectionRegistry.Converter</a><<a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.Converter.html" title="type parameter in ZKConnectionRegistry.Converter">T</a>></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistryURIFactory.html" title="class in org.apache.hadoop.hbase.client">ZKConnectionRegistryURIFactory</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.Converter.html" title="interface in org.apache.hadoop.hbase.client">ZKConnectionRegistry.Converter</a><<a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.Converter.html" title="type parameter in ZKConnectionRegistry.Converter">T</a>></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/client/ZKConnectionRegistryURIFactory.html" title="class in org.apache.hadoop.hbase.client">ZKConnectionRegistryURIFactory</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Connection registry creator implementation for creating <a href="org/apache/hadoop/hbase/client/ZKConnectionRegistry.html" title="class in org.apache.hadoop.hbase.client"><code>ZKConnectionRegistry</code></a>.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkCoordinatedStateManager.html" title="class in org.apache.hadoop.hbase.coordination">ZkCoordinatedStateManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkCoordinatedStateManager.html" title="class in org.apache.hadoop.hbase.coordination">ZkCoordinatedStateManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">since 2.4.0 and in 3.0.0, to be removed in 4.0.0, replaced by procedure-based
distributed WAL splitter (see SplitWALManager) which doesn't use this zk-based
coordinator.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKDump.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKDump</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKDump.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKDump</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Builds a string containing everything in ZooKeeper.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKLeaderManager.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKLeaderManager</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKLeaderManager.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKLeaderManager</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Not used</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKListener.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKListener</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKListener.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKListener</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base class for internal listeners of ZooKeeper events.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMainServer.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMainServer</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMainServer.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMainServer</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Tool for running ZookeeperMain from HBase by reading a ZooKeeper server from HBase XML
configuration.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMainServer.HACK_UNTIL_ZOOKEEPER_1897_ZooKeeperMain.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMainServer.HACK_UNTIL_ZOOKEEPER_1897_ZooKeeperMain</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMainServer.HACK_UNTIL_ZOOKEEPER_1897_ZooKeeperMain.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMainServer.HACK_UNTIL_ZOOKEEPER_1897_ZooKeeperMain</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZooKeeper 3.4.6 broke being able to pass commands on command line.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMetadata.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMetadata</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKMetadata.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKMetadata</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The metadata append to the start of data on zookeeper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKNodeTracker.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKNodeTracker</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKNodeTracker.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKNodeTracker</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Tracks the availability and value of a single ZooKeeper node.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles synchronization of access control list entries and updates throughout all nodes in the
cluster.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureCoordinationManager</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureCoordinator.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureCoordinator</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureCoordinationManager.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureCoordinationManager</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureCoordinator.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureCoordinator</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZooKeeper based <a href="org/apache/hadoop/hbase/procedure/ProcedureCoordinatorRpcs.html" title="interface in org.apache.hadoop.hbase.procedure"><code>ProcedureCoordinatorRpcs</code></a> for a <a href="org/apache/hadoop/hbase/procedure/ProcedureCoordinator.html" title="class in org.apache.hadoop.hbase.procedure"><code>ProcedureCoordinator</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureMemberRpcs</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureMemberRpcs.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureMemberRpcs</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZooKeeper based controller for a procedure member.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureUtil.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/procedure/ZKProcedureUtil.html" title="class in org.apache.hadoop.hbase.procedure">ZKProcedureUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is a shared ZooKeeper-based znode management utils for distributed procedure.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationPeerStorage.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationPeerStorage</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationPeerStorage.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationPeerStorage</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZK based replication peer storage.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Just retain a small set of the methods for the old zookeeper based replication queue storage, for
migrating.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.MigrationIterator.html" title="interface in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.MigrationIterator</a><<a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.MigrationIterator.html" title="type parameter in ZKReplicationQueueStorageForMigration.MigrationIterato [...]
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.ZkLastPushedSeqId.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.ZkLastPushedSeqId</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.ZkReplicationQueueData.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.ZkReplicationQueueData</a></div>
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.MigrationIterator.html" title="interface in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.MigrationIterator</a><<a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.MigrationIterator.html" title="type parameter in ZKReplicationQueueStorageForMigration.MigrationIterator [...]
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.ZkLastPushedSeqId.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.ZkLastPushedSeqId</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationStorageBase.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationStorageBase</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationQueueStorageForMigration.ZkReplicationQueueData.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationQueueStorageForMigration.ZkReplicationQueueData</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/replication/ZKReplicationStorageBase.html" title="class in org.apache.hadoop.hbase.replication">ZKReplicationStorageBase</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is a base class for maintaining replication related data,for example, peer, queue, etc, in
zookeeper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/ZKSecretWatcher.html" title="class in org.apache.hadoop.hbase.security.token">ZKSecretWatcher</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/token/ZKSecretWatcher.html" title="class in org.apache.hadoop.hbase.security.token">ZKSecretWatcher</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Synchronizes token encryption keys across cluster nodes.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKServerTool.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKServerTool</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKServerTool.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKServerTool</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Tool for reading ZooKeeper servers from HBase XML configuration and producing a line-by-line list
for use by bash scripts.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKSplitLog.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKSplitLog</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKSplitLog.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKSplitLog</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">since 2.4.0 and 3.0.0 replaced by procedure-based WAL splitting; see SplitWALManager.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html" title="class in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.html" title="class in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZooKeeper based implementation of <a href="org/apache/hadoop/hbase/coordination/SplitLogManagerCoordination.html" title="interface in org.apache.hadoop.hbase.coordination"><code>SplitLogManagerCoordination</code></a></div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.html" title="interface in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination.TaskFinisher</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.html" title="interface in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination.TaskFinisher</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block"><a href="org/apache/hadoop/hbase/master/SplitLogManager.html" title="class in org.apache.hadoop.hbase.master"><code>SplitLogManager</code></a> can use objects implementing this
interface to finish off a partially done task by
<a href="org/apache/hadoop/hbase/regionserver/SplitLogWorker.html" title="class in org.apache.hadoop.hbase.regionserver"><code>SplitLogWorker</code></a>.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.Status.html" title="enum class in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination.TaskFinisher.Status</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="org/apache/hadoop/hbase/coordination/ZKSplitLogManagerCoordination.TaskFinisher.Status.html" title="enum class in org.apache.hadoop.hbase.coordination">ZKSplitLogManagerCoordination.TaskFinisher.Status</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">status that can be returned finish()</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkSplitLogWorkerCoordination.html" title="class in org.apache.hadoop.hbase.coordination">ZkSplitLogWorkerCoordination</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkSplitLogWorkerCoordination.html" title="class in org.apache.hadoop.hbase.coordination">ZkSplitLogWorkerCoordination</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZooKeeper based implementation of <a href="org/apache/hadoop/hbase/coordination/SplitLogWorkerCoordination.html" title="interface in org.apache.hadoop.hbase.coordination"><code>SplitLogWorkerCoordination</code></a> It listen for changes in
ZooKeeper and</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkSplitLogWorkerCoordination.ZkSplitTaskDetails.html" title="class in org.apache.hadoop.hbase.coordination">ZkSplitLogWorkerCoordination.ZkSplitTaskDetails</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coordination/ZkSplitLogWorkerCoordination.ZkSplitTaskDetails.html" title="class in org.apache.hadoop.hbase.coordination">ZkSplitLogWorkerCoordination.ZkSplitTaskDetails</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">When ZK-based implementation wants to complete the task, it needs to know task znode and
current znode cversion (needed for subsequent update operation).</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/example/ZKTableArchiveClient.html" title="class in org.apache.hadoop.hbase.backup.example">ZKTableArchiveClient</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/backup/example/ZKTableArchiveClient.html" title="class in org.apache.hadoop.hbase.backup.example">ZKTableArchiveClient</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Example class for how to use the table archiving coordinated via zookeeper</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Internal HBase utility class for ZooKeeper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.NodeAndData.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.NodeAndData</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">Deprecated.
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.NodeAndData.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.NodeAndData</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">Deprecated.
<div class="deprecation-comment">Unused</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents an action taken by ZKUtil, e.g.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.CreateAndFailSilent.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.CreateAndFailSilent</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.CreateAndFailSilent.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.CreateAndFailSilent</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZKUtilOp representing createAndFailSilent in ZooKeeper (attempt to create node, ignore error
if already exists)</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.DeleteNodeFailSilent.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.DeleteNodeFailSilent</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.DeleteNodeFailSilent.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.DeleteNodeFailSilent</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZKUtilOp representing deleteNodeFailSilent in ZooKeeper (attempt to delete node, ignore error
if node doesn't exist)</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.SetData.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.SetData</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKUtil.ZKUtilOp.SetData.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKUtil.ZKUtilOp.SetData</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ZKUtilOp representing setData in ZooKeeper</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/ZKVisibilityLabelWatcher.html" title="class in org.apache.hadoop.hbase.security.visibility">ZKVisibilityLabelWatcher</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/security/visibility/ZKVisibilityLabelWatcher.html" title="class in org.apache.hadoop.hbase.security.visibility">ZKVisibilityLabelWatcher</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A zk watcher that watches the labels table znode.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Acts as the single ZooKeeper Watcher.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/ZNodeClearer.html" title="class in org.apache.hadoop.hbase">ZNodeClearer</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/ZNodeClearer.html" title="class in org.apache.hadoop.hbase">ZNodeClearer</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">
Contains a set of methods for the collaboration between the start/stop scripts and the servers.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZNodePaths.html" title="class in org.apache.hadoop.hbase.zookeeper">ZNodePaths</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZNodePaths.html" title="class in org.apache.hadoop.hbase.zookeeper">ZNodePaths</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Class that hold all the paths of znode for HBase.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ZooKeeperConnectionException.html" title="class in org.apache.hadoop.hbase">ZooKeeperConnectionException</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab5">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab5"><a href="org/apache/hadoop/hbase/ZooKeeperConnectionException.html" title="class in org.apache.hadoop.hbase">ZooKeeperConnectionException</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab5">
<div class="block">Thrown if the client can't connect to ZooKeeper.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZooKeeperHelper.html" title="class in org.apache.hadoop.hbase.zookeeper">ZooKeeperHelper</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/zookeeper/ZooKeeperHelper.html" title="class in org.apache.hadoop.hbase.zookeeper">ZooKeeperHelper</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Methods that help working with ZooKeeper</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ZooKeeperScanPolicyObserver</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ZooKeeperScanPolicyObserver</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">This is an example showing how a RegionObserver could be configured via ZooKeeper in order to
control a Region compaction, flush, and scan policy.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.ZKDataHolder.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ZooKeeperScanPolicyObserver.ZKDataHolder</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/coprocessor/example/ZooKeeperScanPolicyObserver.ZKDataHolder.html" title="class in org.apache.hadoop.hbase.coprocessor.example">ZooKeeperScanPolicyObserver.ZKDataHolder</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Internal watcher that keep "data" up to date asynchronously.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/aircompressor/ZstdCodec.html" title="class in org.apache.hadoop.hbase.io.compress.aircompressor">ZstdCodec</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/aircompressor/ZstdCodec.html" title="class in org.apache.hadoop.hbase.io.compress.aircompressor">ZstdCodec</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Hadoop codec implementation for Zstandard, implemented with aircompressor.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdCodec.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdCodec</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdCodec.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdCodec</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Hadoop ZStandard codec implemented with zstd-jni.</div>
</div>
-<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdCompressor.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdCompressor</a></div>
-<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdCompressor.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdCompressor</a></div>
+<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Hadoop compressor glue for zstd-jni.</div>
</div>
-<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdDecompressor.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdDecompressor</a></div>
-<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
+<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="org/apache/hadoop/hbase/io/compress/zstd/ZstdDecompressor.html" title="class in org.apache.hadoop.hbase.io.compress.zstd">ZstdDecompressor</a></div>
+<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Hadoop decompressor glue for zstd-java.</div>
</div>
</div>
diff --git a/devapidocs/index-all.html b/devapidocs/index-all.html
index e8e7d6a743b..015347c6a81 100644
--- a/devapidocs/index-all.html
+++ b/devapidocs/index-all.html
@@ -41681,8 +41681,6 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/KeyPressGenerator.html#generatorThread()" class="member-name-link">generatorThread()</a> - Method in class org.apache.hadoop.hbase.hbtop.terminal.impl.<a href="org/apache/hadoop/hbase/hbtop/terminal/impl/KeyPressGenerator.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">KeyPressGenerator</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#%3Cinit%3E()" class="member-name-link">GeneratorType()</a> - Constructor for enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/chaos/ChaosService.ChaosServiceName.html#GENERIC" class="member-name-link">GENERIC</a> - Enum constant in enum class org.apache.hadoop.hbase.chaos.<a href="org/apache/hadoop/hbase/chaos/ChaosService.ChaosServiceName.html" title="enum class in org.apache.hadoop.hbase.chaos">ChaosService.ChaosServiceName</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html#get" class="member-name-link">get</a> - Variable in class org.apache.hadoop.hbase.regionserver.querymatcher.<a href="org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.html" title="class in org.apache.hadoop.hbase.regionserver.querymatcher">NormalUserScanQueryMatcher</a></dt>
@@ -84917,8 +84915,6 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.GeneratorFunctionType.html#LOAD" class="member-name-link">LOAD</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.GeneratorFunctionType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.GeneratorFunctionType</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#LOAD" class="member-name-link">LOAD</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/CatalogReplicaMode.html#LOAD_BALANCE" class="member-name-link">LOAD_BALANCE</a> - Enum constant in enum class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/CatalogReplicaMode.html" title="enum class in org.apache.hadoop.hbase">CatalogReplicaMode</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/LoadBalancerPerformanceEvaluation.html#LOAD_BALANCER_OPT" class="member-name-link">LOAD_BALANCER_OPT</a> - Static variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/LoadBalancerPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.master.balancer">LoadBalancerPerformanceEvaluation</a></dt>
@@ -85442,8 +85438,6 @@ loadScripts(document, 'script');</script>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/field/Field.html#LOCALITY" class="member-name-link">LOCALITY</a> - Enum constant in enum class org.apache.hadoop.hbase.hbtop.field.<a href="org/apache/hadoop/hbase/hbtop/field/Field.html" title="enum class in org.apache.hadoop.hbase.hbtop.field">Field</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#LOCALITY" class="member-name-link">LOCALITY</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html#LOCALITY_COST_KEY" class="member-name-link">LOCALITY_COST_KEY</a> - Static variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">ServerLocalityCostFunction</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html#LOCALITY_CUTOFF_MULTIPLIER" class="member-name-link">LOCALITY_CUTOFF_MULTIPLIER</a> - Static variable in class org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatImpl.html" title="class in org.apache.hadoop.hbase.mapreduce">TableSnapshotInputFormatImpl</a></dt>
@@ -103456,6 +103450,8 @@ service.</div>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html#physical" class="member-name-link">physical</a> - Variable in class org.apache.hadoop.hbase.hbtop.terminal.impl.<a href="org/apache/hadoop/hbase/hbtop/terminal/impl/ScreenBuffer.html" title="class in org.apache.hadoop.hbase.hbtop.terminal.impl">ScreenBuffer</a></dt>
<dd> </dd>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#pickAnyGenerator(java.util.List)" class="member-name-link">pickAnyGenerator(List<Class<? extends CandidateGenerator>>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></dt>
+<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#pickLeastCachedRegion(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int)" class="member-name-link">pickLeastCachedRegion(BalancerClusterState, int)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html" title="class in org.apache.hadoop. [...]
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#pickLeastLoadedFNServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,java.util.List,int)" class="member-name-link">pickLeastLoadedFNServer(BalancerClusterState, List<ServerName>, int)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html" title="class in [...]
@@ -110385,8 +110381,6 @@ service.</div>
</dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html#RACK" class="member-name-link">RACK</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.LocalityType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState.LocalityType</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#RACK" class="member-name-link">RACK</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html#RACK_LOCALITY_COST_KEY" class="member-name-link">RACK_LOCALITY_COST_KEY</a> - Static variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RackLocalityCostFunction</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html#rackLocalities" class="member-name-link">rackLocalities</a> - Variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a></dt>
@@ -110459,8 +110453,6 @@ service.</div>
<dd>
<div class="block">Fill given array with random bytes at the specified position.</div>
</dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#RANDOM" class="member-name-link">RANDOM</a> - Enum constant in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html#RANDOM_RADIX" class="member-name-link">RANDOM_RADIX</a> - Static variable in class org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/SecureBulkLoadManager.html" title="class in org.apache.hadoop.hbase.regionserver">SecureBulkLoadManager</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/PerformanceEvaluation.html#RANDOM_READ" class="member-name-link">RANDOM_READ</a> - Static variable in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/PerformanceEvaluation.html" title="class in org.apache.hadoop.hbase">PerformanceEvaluation</a></dt>
@@ -132162,6 +132154,8 @@ service.</div>
<dd>
<div class="block">Specify if we have to shuffle the map tasks.</div>
</dd>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#shuffledGeneratorClasses" class="member-name-link">shuffledGeneratorClasses</a> - Variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></dt>
+<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html#shuffleNormalizationPlans(java.util.List)" class="member-name-link">shuffleNormalizationPlans(List<NormalizationPlan>)</a> - Method in class org.apache.hadoop.hbase.master.normalizer.<a href="org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.html" title="class in org.apache.hadoop.hbase.master.normalizer">SimpleRegionNormalizer</a></dt>
<dd>
<div class="block">This very simple method exists so we can verify it was called in a unit test.</div>
@@ -137527,8 +137521,6 @@ service.</div>
</dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#%3Cinit%3E(org.apache.hadoop.hbase.master.balancer.MetricsStochasticBalancer)" class="member-name-link">StochasticLoadBalancer(MetricsStochasticBalancer)</a> - Constructor for class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a> - Enum Class in <a href="org/apache/hadoop/hbase/master/balancer/package-summary.html">org.apache.hadoop.hbase.master.balancer</a></dt>
-<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/master/balancer/MetricsStochasticBalancer.html#stochasticSource" class="member-name-link">stochasticSource</a> - Variable in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/MetricsStochasticBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">MetricsStochasticBalancer</a></dt>
<dd>
<div class="block">Use the stochastic source instead of the default source.</div>
@@ -149286,20 +149278,20 @@ service.</div>
<div class="block">Read the list of children under the archive znode as table names and then sets those tables to
the list of tables that we should archive</div>
</dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.CacheAwareCostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.CacheAwareCostFu [...]
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareL [...]
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/CostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/CostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></dt>
<dd>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
</dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCostFunction</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionCountSkewCostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionCountSkewCostFunction</a></dt>
<dd> </dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#updateWeight(double%5B%5D)" class="member-name-link">updateWeight(double[])</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaGroupingCostFunction</a></dt>
+<dt><a href="org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight(Map<Class<? extends CandidateGenerator>, Double>)</a> - Method in class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaGroupingCostFunction</a></dt>
<dd> </dd>
<dt><a href="org/apache/hadoop/hbase/filter/FuzzyRowFilter.RowTracker.html#updateWith(org.apache.hadoop.hbase.Cell,org.apache.hadoop.hbase.util.Pair)" class="member-name-link">updateWith(Cell, Pair<byte[], byte[]>)</a> - Method in class org.apache.hadoop.hbase.filter.<a href="org/apache/hadoop/hbase/filter/FuzzyRowFilter.RowTracker.html" title="class in org.apache.hadoop.hbase.filter">FuzzyRowFilter.RowTracker</a></dt>
<dd> </dd>
@@ -150633,10 +150625,6 @@ service.</div>
<dd>
<div class="block">Returns the enum constant of this class with the specified name.</div>
</dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#valueOf(java.lang.String)" class="member-name-link">valueOf(String)</a> - Static method in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd>
-<div class="block">Returns the enum constant of this class with the specified name.</div>
-</dd>
<dt><a href="org/apache/hadoop/hbase/master/cleaner/DirScanPool.Type.html#valueOf(java.lang.String)" class="member-name-link">valueOf(String)</a> - Static method in enum class org.apache.hadoop.hbase.master.cleaner.<a href="org/apache/hadoop/hbase/master/cleaner/DirScanPool.Type.html" title="enum class in org.apache.hadoop.hbase.master.cleaner">DirScanPool.Type</a></dt>
<dd>
<div class="block">Returns the enum constant of this class with the specified name.</div>
@@ -151603,11 +151591,6 @@ the order they are declared.</div>
<div class="block">Returns an array containing the constants of this enum class, in
the order they are declared.</div>
</dd>
-<dt><a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#values()" class="member-name-link">values()</a> - Static method in enum class org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></dt>
-<dd>
-<div class="block">Returns an array containing the constants of this enum class, in
-the order they are declared.</div>
-</dd>
<dt><a href="org/apache/hadoop/hbase/master/cleaner/DirScanPool.Type.html#values()" class="member-name-link">values()</a> - Static method in enum class org.apache.hadoop.hbase.master.cleaner.<a href="org/apache/hadoop/hbase/master/cleaner/DirScanPool.Type.html" title="enum class in org.apache.hadoop.hbase.master.cleaner">DirScanPool.Type</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum class, in
diff --git a/devapidocs/member-search-index.js b/devapidocs/member-search-index.js
index fc49a8b7ee4..79cdbdb23d8 100644
--- a/devapidocs/member-search-index.js
+++ b/devapidocs/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBlockcache()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBlocksize()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBloomfilter()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getCompression()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getInMemory()"},{"p":"org.apache. [...]
\ No newline at end of file
+memberSearchIndex = [{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBlockcache()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBlocksize()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getBloomfilter()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getCompression()"},{"p":"org.apache.hadoop.hbase.rest.model","c":"ColumnSchemaModel","l":"__getInMemory()"},{"p":"org.apache. [...]
\ No newline at end of file
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html
index 18ef96a168b..37a372ad4c6 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CPRequestCostFunction.html
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
index f34795f3ba0..a261681fd96 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
@@ -83,7 +83,7 @@ loadScripts(document, 'script');</script>
<dd><a href="CacheAwareLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-162">CacheAwareLoadBalancer.CacheAwareCandidateGenerator</a></span>
+<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-163">CacheAwareLoadBalancer.CacheAwareCandidateGenerator</a></span>
<span class="extends-implements">extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
</section>
<section class="summary">
@@ -156,7 +156,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>CacheAwareCandidateGenerator</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-162">CacheAwareCandidateGenerator</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-163">CacheAwareCandidateGenerator</a></span>()</div>
</section>
</li>
</ul>
@@ -170,7 +170,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>generate</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-163">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in or [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-164">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in or [...]
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CandidateGenerator.html#generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">generate</a></code> in class <code><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></dd>
@@ -180,7 +180,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="generatePlan(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int,float,int,float)">
<h3>generatePlan</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-207">generatePlan</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-208">generatePlan</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in [...]
int regionIndex,
int currentServerIndex,
float cacheRatioOnCurrentServer,
@@ -191,7 +191,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="moveRegionToOldServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int,float,int,float)">
<h3>moveRegionToOldServer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-216">moveRegionToOldServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html#line-217">moveRegionToOldServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int regionIndex,
int currentServerIndex,
float cacheRatioOnCurrentServer,
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
index 26fedbe8e8f..7d43ff25984 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
@@ -83,7 +83,7 @@ loadScripts(document, 'script');</script>
<dd><a href="CacheAwareLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">static class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-417">CacheAwareLoadBalancer.CacheAwareCostFunction</a></span>
+<div class="type-signature"><span class="modifiers">static class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-419">CacheAwareLoadBalancer.CacheAwareCostFunction</a></span>
<span class="extends-implements">extends <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span></div>
</section>
<section class="summary">
@@ -156,8 +156,8 @@ loadScripts(document, 'script');</script>
int oldServer,
int newServer)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java [...]
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -185,7 +185,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="CACHE_COST_KEY">
<h3>CACHE_COST_KEY</h3>
-<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-418">CACHE_COST_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-420">CACHE_COST_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -199,19 +199,19 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cacheRatio">
<h3>cacheRatio</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-419">cacheRatio</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-421">cacheRatio</a></span></div>
</section>
</li>
<li>
<section class="detail" id="bestCacheRatio">
<h3>bestCacheRatio</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-420">bestCacheRatio</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-422">bestCacheRatio</a></span></div>
</section>
</li>
<li>
<section class="detail" id="DEFAULT_CACHE_COST">
<h3>DEFAULT_CACHE_COST</h3>
-<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-422">DEFAULT_CACHE_COST</a></span></div>
+<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-424">DEFAULT_CACHE_COST</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -233,7 +233,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>(org.apache.hadoop.conf.Configuration)">
<h3>CacheAwareCostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-424">CacheAwareCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-426">CacheAwareCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
</section>
</li>
</ul>
@@ -247,7 +247,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-433">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-435">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">CostFunction</a></code></span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
@@ -260,7 +260,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-452">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-454">cost</a></span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CostFunction.html#cost()">cost</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -270,7 +270,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionMoved(int,int,int)">
<h3>regionMoved</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-457">regionMoved</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-459">regionMoved</a></span><wbr><span class="parameters">(int region,
int oldServer,
int newServer)</span></div>
<dl class="notes">
@@ -282,20 +282,20 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="getServerWithBestCacheRatioForRegion(int)">
<h3>getServerWithBestCacheRatioForRegion</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-476">getServerWithBestCacheRatioForRegion</a></span><wbr><span class="parameters">(int region)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-478">getServerWithBestCacheRatioForRegion</a></span><wbr><span class="parameters">(int region)</span></div>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-480">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
-<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(double%5B%5D)">CostFunction</a></code></span></div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html#line-482">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a [...]
+<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(java.util.Map)">CostFunction</a></code></span></div>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
<dl class="notes">
<dt>Overrides:</dt>
-<dd><code><a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
+<dd><code><a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
<dt>Parameters:</dt>
<dd><code>weights</code> - the weights for every generator.</dd>
</dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
index 45331bfac48..2c3ae1020e5 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
@@ -83,7 +83,7 @@ loadScripts(document, 'script');</script>
<dd><a href="CacheAwareLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">static class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-377">CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction</a></span>
+<div class="type-signature"><span class="modifiers">static class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-378">CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction</a></span>
<span class="extends-implements">extends <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span></div>
</section>
<section class="summary">
@@ -151,7 +151,7 @@ loadScripts(document, 'script');</script>
int newServer)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java. [...]
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -179,7 +179,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="REGION_COUNT_SKEW_COST_KEY">
<h3>REGION_COUNT_SKEW_COST_KEY</h3>
-<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-378">REGION_COUNT_SKEW_COST_KEY</a>< [...]
+<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-379">REGION_COUNT_SKEW_COST_KEY</a>< [...]
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -193,7 +193,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_REGION_COUNT_SKEW_COST">
<h3>DEFAULT_REGION_COUNT_SKEW_COST</h3>
-<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-380">DEFAULT_REGION_COUNT_SKEW_COST</a></span></div>
+<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-381">DEFAULT_REGION_COUNT_SKEW_COST</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -207,7 +207,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="DoubleArrayCost.html" title="class in org.apache.hadoop.hbase.master.balancer">DoubleArrayCost</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-381">cost</a></span></div>
+<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="DoubleArrayCost.html" title="class in org.apache.hadoop.hbase.master.balancer">DoubleArrayCost</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-382">cost</a></span></div>
</section>
</li>
</ul>
@@ -221,7 +221,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>(org.apache.hadoop.conf.Configuration)">
<h3>CacheAwareRegionSkewnessCostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-383">CacheAwareRegionSkewnessCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-384">CacheAwareRegionSkewnessCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
</section>
</li>
</ul>
@@ -235,7 +235,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-388">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-389">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">CostFunction</a></code></span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
@@ -248,7 +248,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-399">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-400">cost</a></span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CostFunction.html#cost()">cost</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -258,7 +258,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionMoved(int,int,int)">
<h3>regionMoved</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-404">regionMoved</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-405">regionMoved</a></span><wbr><span class="parameters">(int region,
int oldServer,
int newServer)</span></div>
<dl class="notes">
@@ -268,16 +268,16 @@ loadScripts(document, 'script');</script>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-412">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
-<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(double%5B%5D)">CostFunction</a></code></span></div>
+<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#line-413">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="e [...]
+<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(java.util.Map)">CostFunction</a></code></span></div>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
<dl class="notes">
<dt>Overrides:</dt>
-<dd><code><a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
+<dd><code><a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
<dt>Parameters:</dt>
<dd><code>weights</code> - the weights for every generator.</dd>
</dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html
index e92ecf1a5da..b6bfa4c9559 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html
@@ -85,7 +85,7 @@ loadScripts(document, 'script');</script>
<dd><a href="CacheAwareLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-281">CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator</a></span>
+<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-282">CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator</a></span>
<span class="extends-implements">extends <a href="LoadCandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">LoadCandidateGenerator</a></span></div>
</section>
<section class="summary">
@@ -151,7 +151,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>CacheAwareSkewnessCandidateGenerator</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-281">CacheAwareSkewnessCandidateGenerator</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-282">CacheAwareSkewnessCandidateGenerator</a></span>()</div>
</section>
</li>
</ul>
@@ -165,7 +165,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="pickRandomRegions(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int)">
<h3>pickRandomRegions</h3>
-<div class="member-signature"><span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-282">pickRandomRegions</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master. [...]
+<div class="member-signature"><span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-283">pickRandomRegions</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master. [...]
int thisServer,
int otherServer)</span></div>
<dl class="notes">
@@ -177,7 +177,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="pickLeastCachedRegion(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int)">
<h3>pickLeastCachedRegion</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-360">pickLeastCachedRegion</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#line-361">pickLeastCachedRegion</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int thisServer)</span></div>
</section>
</li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html
index 3b755ffc29c..16a85a743c0 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html
@@ -116,9 +116,6 @@ loadScripts(document, 'script');</script>
<div class="col-second even-row-color"><code><a href="CacheAwareLoadBalancer.GeneratorFunctionType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.GeneratorFunctionType</a></code></div>
<div class="col-last even-row-color"> </div>
</div>
-<div class="inherited-list">
-<h2 id="nested-classes-inherited-from-class-org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">Nested classes/interfaces inherited from class org.apache.hadoop.hbase.master.balancer.<a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h2>
-<code><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
@@ -139,7 +136,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">Fields inherited from class org.apache.hadoop.hbase.master.balancer.<a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h3>
-<code><a href="StochasticLoadBalancer.html#candidateGenerators">candidateGenerators</a>, <a href="StochasticLoadBalancer.html#COST_FUNCTIONS_COST_FUNCTIONS_KEY">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a>, <a href="StochasticLoadBalancer.html#costFunctions">costFunctions</a>, <a href="StochasticLoadBalancer.html#DEFAULT_KEEP_REGION_LOADS">DEFAULT_KEEP_REGION_LOADS</a>, <a href="StochasticLoadBalancer.html#DEFAULT_MAX_RUNNING_TIME">DEFAULT_MAX_RUNNING_TIME</a>, <a href="StochasticLoadBalancer.h [...]
+<code><a href="StochasticLoadBalancer.html#candidateGenerators">candidateGenerators</a>, <a href="StochasticLoadBalancer.html#COST_FUNCTIONS_COST_FUNCTIONS_KEY">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a>, <a href="StochasticLoadBalancer.html#costFunctions">costFunctions</a>, <a href="StochasticLoadBalancer.html#DEFAULT_KEEP_REGION_LOADS">DEFAULT_KEEP_REGION_LOADS</a>, <a href="StochasticLoadBalancer.html#DEFAULT_MAX_RUNNING_TIME">DEFAULT_MAX_RUNNING_TIME</a>, <a href="StochasticLoadBalancer.h [...]
<div class="inherited-list">
<h3 id="fields-inherited-from-class-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">Fields inherited from class org.apache.hadoop.hbase.master.balancer.<a href="BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
<code><a href="BaseLoadBalancer.html#BALANCER_DECISION_BUFFER_ENABLED">BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#BALANCER_REJECTION_BUFFER_ENABLED">BALANCER_REJECTION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#clusterStatus">clusterStatus</a>, <a href="BaseLoadBalancer.html#DEFAULT_BALANCER_DECISION_BUFFER_ENABLED">DEFAULT_BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#DEFAULT_BALANCER_REJECTION_BUFFER_ENABLED">DEFAULT_BALANCER_REJ [...]
@@ -176,7 +173,7 @@ loadScripts(document, 'script');</script>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addCostFunction(java.util.List,org.apache.hadoop.hbase.master.balancer.CostFunction)" class="member-name-link">addCostFunction</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.h [...]
<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a> costFunction)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerato [...]
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></code></div>
@@ -269,7 +266,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="createCandidateGenerators()">
<h3>createCandidateGenerators</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/b [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in [...]
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="StochasticLoadBalancer.html#createCandidateGenerators()">createCandidateGenerators</a></code> in class <code><a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></code></dd>
@@ -279,7 +276,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="createCostFunctions(org.apache.hadoop.conf.Configuration)">
<h3>createCostFunctions</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Cach [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Cach [...]
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="StochasticLoadBalancer.html#createCostFunctions(org.apache.hadoop.conf.Configuration)">createCostFunctions</a></code> in class <code><a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></code></dd>
@@ -289,14 +286,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="addCostFunction(java.util.List,org.apache.hadoop.hbase.master.balancer.CostFunction)">
<h3>addCostFunction</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-88">addCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="Cost [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-89">addCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="Cost [...]
<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a> costFunction)</span></div>
</section>
</li>
<li>
<section class="detail" id="updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)">
<h3>updateClusterMetrics</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-94">updateClusterMetrics</a></span><wbr><span class="parameters">(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> clusterMetrics)</span></div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-95">updateClusterMetrics</a></span><wbr><span class="parameters">(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> clusterMetrics)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="../LoadBalancer.html#updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)">LoadBalancer</a></code></span></div>
<div class="block">Set the current cluster status. This allows a LoadBalancer to map host name to a server</div>
<dl class="notes">
@@ -310,14 +307,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateRegionLoad()">
<h3>updateRegionLoad</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-103">updateRegionLoad</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-104">updateRegionLoad</a></span>()</div>
<div class="block">Collect the amount of region cached for all the regions from all the active region servers.</div>
</section>
</li>
<li>
<section class="detail" id="getRegionInfoByEncodedName(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,java.lang.String)">
<h3>getRegionInfoByEncodedName</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-150">getRegionInfoByEncodedName</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.ha [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.html#line-151">getRegionInfoByEncodedName</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.ha [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> regionName)</span></div>
</section>
</li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadAsRateFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadAsRateFunction.html
index 98b22684faa..7656acae6ee 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadAsRateFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadAsRateFunction.html
@@ -138,7 +138,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#getCostFromRl(org.apache.hadoop.hbase.master.balancer.BalancerRegionLoad)">getCostFromRl</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html
index a60773dd056..6e798060d01 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFromRegionLoadFunction.html
@@ -161,7 +161,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFunction.html
index 8fd5a9e33a6..4487190a471 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/CostFunction.html
@@ -82,7 +82,7 @@ loadScripts(document, 'script');</script>
</dl>
<hr>
<div class="type-signature"><span class="annotations">@Private
-</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-25">CostFunction</a></span>
+</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-26">CostFunction</a></span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Base class of StochasticLoadBalancer's Cost Functions.</div>
</section>
@@ -169,7 +169,7 @@ loadScripts(document, 'script');</script>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setMultiplier(float)" class="member-name-link">setMultiplier</a><wbr>(float m)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java. [...]
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -194,13 +194,13 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="multiplier">
<h3>multiplier</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-32">multiplier</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-33">multiplier</a></span></div>
</section>
</li>
<li>
<section class="detail" id="cluster">
<h3>cluster</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-34">cluster</a></span></div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-35">cluster</a></span></div>
</section>
</li>
</ul>
@@ -214,7 +214,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>CostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-26">CostFunction</a></span>()</div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-27">CostFunction</a></span>()</div>
</section>
</li>
</ul>
@@ -228,31 +228,31 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="getCostEpsilon(double)">
<h3>getCostEpsilon</h3>
-<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-28">getCostEpsilon</a></span><wbr><span class="parameters">(double cost)</span></div>
+<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-29">getCostEpsilon</a></span><wbr><span class="parameters">(double cost)</span></div>
</section>
</li>
<li>
<section class="detail" id="isNeeded()">
<h3>isNeeded</h3>
-<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-36">isNeeded</a></span>()</div>
+<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-37">isNeeded</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="getMultiplier()">
<h3>getMultiplier</h3>
-<div class="member-signature"><span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-40">getMultiplier</a></span>()</div>
+<div class="member-signature"><span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-41">getMultiplier</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="setMultiplier(float)">
<h3>setMultiplier</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-44">setMultiplier</a></span><wbr><span class="parameters">(float m)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-45">setMultiplier</a></span><wbr><span class="parameters">(float m)</span></div>
</section>
</li>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-52">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-53">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
</section>
@@ -260,7 +260,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">
<h3>postAction</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-61">postAction</a></span><wbr><span class="parameters">(<a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a> action)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-62">postAction</a></span><wbr><span class="parameters">(<a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a> action)</span></div>
<div class="block">Called once per cluster Action to give the cost function an opportunity to update it's state.
postAction() is always called at least once before cost() is called with the cluster that this
action is performed on.</div>
@@ -269,7 +269,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionMoved(int,int,int)">
<h3>regionMoved</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-83">regionMoved</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-84">regionMoved</a></span><wbr><span class="parameters">(int region,
int oldServer,
int newServer)</span></div>
</section>
@@ -277,13 +277,13 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected abstract</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-86">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected abstract</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-87">cost</a></span>()</div>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-94">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-95">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle. [...]
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
@@ -296,7 +296,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="scale(double,double,double)">
<h3>scale</h3>
-<div class="member-signature"><span class="modifiers">protected static</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-105">scale</a></span><wbr><span class="parameters">(double min,
+<div class="member-signature"><span class="modifiers">protected static</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/CostFunction.html#line-106">scale</a></span><wbr><span class="parameters">(double min,
double max,
double value)</span></div>
<div class="block">Scale the value between 0 and 1.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html
index 0751a42e190..99dd655b6a8 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html
@@ -83,7 +83,7 @@ loadScripts(document, 'script');</script>
<dd><a href="FavoredStochasticBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">FavoredStochasticBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-584">FavoredStochasticBalancer.FavoredNodeLoadPicker</a></span>
+<div class="type-signature"><span class="modifiers">class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-587">FavoredStochasticBalancer.FavoredNodeLoadPicker</a></span>
<span class="extends-implements">extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
</section>
<section class="summary">
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>FavoredNodeLoadPicker</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-584">FavoredNodeLoadPicker</a></span>()</div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-587">FavoredNodeLoadPicker</a></span>()</div>
</section>
</li>
</ul>
@@ -164,7 +164,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>generate</h3>
-<div class="member-signature"><span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-586">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClu [...]
+<div class="member-signature"><span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-589">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClu [...]
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CandidateGenerator.html#generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">generate</a></code> in class <code><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></dd>
@@ -174,14 +174,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="pickLeastLoadedServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int)">
<h3>pickLeastLoadedServer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-606">pickLeastLoadedServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-609">pickLeastLoadedServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int thisServer)</span></div>
</section>
</li>
<li>
<section class="detail" id="pickLeastLoadedFNServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,java.util.List,int)">
<h3>pickLeastLoadedFNServer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-617">pickLeastLoadedFNServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-620">pickLeastLoadedFNServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> favoredNodes,
int currentServerIndex)</span></div>
</section>
@@ -189,7 +189,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="pickMostLoadedServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>pickMostLoadedServer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-639">pickMostLoadedServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLoadPicker.html#line-642">pickMostLoadedServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
</section>
</li>
</ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html
index 27904629149..d53f6d914cd 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html
@@ -83,7 +83,7 @@ loadScripts(document, 'script');</script>
<dd><a href="FavoredStochasticBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">FavoredStochasticBalancer</a></dd>
</dl>
<hr>
-<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-513">FavoredStochasticBalancer.FavoredNodeLocalityPicker</a></span>
+<div class="type-signature"><span class="modifiers">private class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-516">FavoredStochasticBalancer.FavoredNodeLocalityPicker</a></span>
<span class="extends-implements">extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
<div class="block">Pick favored nodes with the highest locality for a region with lowest locality.</div>
</section>
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>FavoredNodeLocalityPicker</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-513">FavoredNodeLocalityPicker</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-516">FavoredNodeLocalityPicker</a></span>()</div>
</section>
</li>
</ul>
@@ -164,7 +164,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>generate</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-515">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in or [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-518">generate</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in or [...]
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CandidateGenerator.html#generate(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">generate</a></code> in class <code><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></dd>
@@ -174,7 +174,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="getDifferentFavoredNode(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,java.util.List,int)">
<h3>getDifferentFavoredNode</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-553">getDifferentFavoredNode</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-556">getDifferentFavoredNode</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> favoredNodes,
int currentServer)</span></div>
</section>
@@ -182,7 +182,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="pickLowestLocalRegionOnServer(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int)">
<h3>pickLowestLocalRegionOnServer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-575">pickLowestLocalRegionOnServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.FavoredNodeLocalityPicker.html#line-578">pickLowestLocalRegionOnServer</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int server)</span></div>
</section>
</li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html
index 5afe77434be..b1340eff62d 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html
@@ -120,9 +120,6 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<div class="block">Pick favored nodes with the highest locality for a region with lowest locality.</div>
</div>
</div>
-<div class="inherited-list">
-<h2 id="nested-classes-inherited-from-class-org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">Nested classes/interfaces inherited from class org.apache.hadoop.hbase.master.balancer.<a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h2>
-<code><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
@@ -143,7 +140,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
</div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer">Fields inherited from class org.apache.hadoop.hbase.master.balancer.<a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></h3>
-<code><a href="StochasticLoadBalancer.html#candidateGenerators">candidateGenerators</a>, <a href="StochasticLoadBalancer.html#COST_FUNCTIONS_COST_FUNCTIONS_KEY">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a>, <a href="StochasticLoadBalancer.html#costFunctions">costFunctions</a>, <a href="StochasticLoadBalancer.html#DEFAULT_KEEP_REGION_LOADS">DEFAULT_KEEP_REGION_LOADS</a>, <a href="StochasticLoadBalancer.html#DEFAULT_MAX_RUNNING_TIME">DEFAULT_MAX_RUNNING_TIME</a>, <a href="StochasticLoadBalancer.h [...]
+<code><a href="StochasticLoadBalancer.html#candidateGenerators">candidateGenerators</a>, <a href="StochasticLoadBalancer.html#COST_FUNCTIONS_COST_FUNCTIONS_KEY">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a>, <a href="StochasticLoadBalancer.html#costFunctions">costFunctions</a>, <a href="StochasticLoadBalancer.html#DEFAULT_KEEP_REGION_LOADS">DEFAULT_KEEP_REGION_LOADS</a>, <a href="StochasticLoadBalancer.html#DEFAULT_MAX_RUNNING_TIME">DEFAULT_MAX_RUNNING_TIME</a>, <a href="StochasticLoadBalancer.h [...]
<div class="inherited-list">
<h3 id="fields-inherited-from-class-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">Fields inherited from class org.apache.hadoop.hbase.master.balancer.<a href="BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
<code><a href="BaseLoadBalancer.html#BALANCER_DECISION_BUFFER_ENABLED">BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#BALANCER_REJECTION_BUFFER_ENABLED">BALANCER_REJECTION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#clusterStatus">clusterStatus</a>, <a href="BaseLoadBalancer.html#DEFAULT_BALANCER_DECISION_BUFFER_ENABLED">DEFAULT_BALANCER_DECISION_BUFFER_ENABLED</a>, <a href="BaseLoadBalancer.html#DEFAULT_BALANCER_REJECTION_BUFFER_ENABLED">DEFAULT_BALANCER_REJ [...]
@@ -200,7 +197,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
implementation.</div>
</div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerato [...]
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
@@ -353,7 +350,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="createCandidateGenerators()">
<h3>createCandidateGenerators</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/b [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in [...]
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="StochasticLoadBalancer.html#createCandidateGenerators()">createCandidateGenerators</a></code> in class <code><a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></code></dd>
@@ -363,7 +360,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="getRandomGenerator()">
<h3>getRandomGenerator</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-91">getRandomGenerator</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-92">getRandomGenerator</a></span>()</div>
<div class="block">Returns any candidate generator in random</div>
<dl class="notes">
<dt>Overrides:</dt>
@@ -375,7 +372,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<section class="detail" id="roundRobinAssignment(java.util.List,java.util.List)">
<h3>roundRobinAssignment</h3>
<div class="member-signature"><span class="annotations">@NonNull
-</span><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a [...]
+</span><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> servers)</span>
throws <span class="exceptions"><a href="../../HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></span></div>
<div class="block">Round robin assignment: Segregate the regions into two types: 1. The regions that have favored
@@ -406,14 +403,14 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="mergeAssignmentMaps(java.util.Map,java.util.Map)">
<h3>mergeAssignmentMaps</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-147">mergeAssignmentMaps</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-150">mergeAssignmentMaps</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache. [...]
</section>
</li>
<li>
<section class="detail" id="generateFNForRegionsWithoutFN(org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper,java.util.List)">
<h3>generateFNForRegionsWithoutFN</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>> regions)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
@@ -425,7 +422,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="segregateRegionsAndAssignRegionsWithFavoredNodes(java.util.Collection,java.util.List)">
<h3>segregateRegionsAndAssignRegionsWithFavoredNodes</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> onlineServers)</span>
throws <span class="exceptions"><a href="../../HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></span></div>
<div class="block">Return a pair - one with assignments when favored nodes are present and another with regions
@@ -439,7 +436,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="addRegionToMap(java.util.Map,org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.ServerName)">
<h3>addRegionToMap</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-221">addRegionToMap</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../ [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-224">addRegionToMap</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../ [...]
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> region,
<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> host)</span></div>
</section>
@@ -447,7 +444,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="getServerFromFavoredNode(java.util.List,org.apache.hadoop.hbase.ServerName)">
<h3>getServerFromFavoredNode</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-235">getServerFromFavoredNode</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Li [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-238">getServerFromFavoredNode</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Li [...]
<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> fn)</span></div>
<div class="block">Get the ServerName for the FavoredNode. Since FN's startcode is -1, we could want to get the
ServerName with the correct start code from the list of provided servers.</div>
@@ -456,7 +453,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="assignRegionToAvailableFavoredNode(java.util.Map,org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.ServerName,org.apache.hadoop.hbase.ServerName,org.apache.hadoop.hbase.ServerName)">
<h3>assignRegionToAvailableFavoredNode</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-249">assignRegionToAvailableFavoredNode</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-252">assignRegionToAvailableFavoredNode</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map [...]
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> region,
<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> primaryHost,
<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a> secondaryHost,
@@ -469,7 +466,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="randomAssignment(org.apache.hadoop.hbase.client.RegionInfo,java.util.List)">
<h3>randomAssignment</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-285">randomAssignment</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client"> [...]
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-288">randomAssignment</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client"> [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> servers)</span>
throws <span class="exceptions"><a href="../../HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></span></div>
<div class="block">If we have favored nodes for a region, we will return one of the FN as destination. If favored
@@ -490,7 +487,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="updateFavoredNodesForRegion(org.apache.hadoop.hbase.client.RegionInfo,java.util.List)">
<h3>updateFavoredNodesForRegion</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-324">updateFavoredNodesForRegion</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> regionInfo,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-327">updateFavoredNodesForRegion</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> regionInfo,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> newFavoredNodes)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
@@ -503,7 +500,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<section class="detail" id="retainAssignment(java.util.Map,java.util.List)">
<h3>retainAssignment</h3>
<div class="member-signature"><span class="annotations">@NonNull
-</span><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a [...]
+</span><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> servers)</span>
throws <span class="exceptions"><a href="../../HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></span></div>
<div class="block">Reuse BaseLoadBalancer's retainAssignment, but generate favored nodes when its missing.</div>
@@ -526,7 +523,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="getOnlineFavoredNodes(java.util.List,java.util.List)">
<h3>getOnlineFavoredNodes</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBal [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBal [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> serversWithoutStartCodes)</span></div>
<div class="block">Return list of favored nodes that are online.</div>
</section>
@@ -534,7 +531,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="getFavoredNodes(org.apache.hadoop.hbase.client.RegionInfo)">
<h3>getFavoredNodes</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBala [...]
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBala [...]
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../favored/FavoredNodesPromoter.html#getFavoredNodes(org.apache.hadoop.hbase.client.RegionInfo)">getFavoredNodes</a></code> in interface <code><a href="../../favored/FavoredNodesPromoter.html" title="interface in org.apache.hadoop.hbase.favored">FavoredNodesPromoter</a></code></dd>
@@ -544,7 +541,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="generateFavoredNodesForDaughter(java.util.List,org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.client.RegionInfo)">
<h3>generateFavoredNodesForDaughter</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-451">generateFavoredNodesForDaughter</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</ [...]
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-454">generateFavoredNodesForDaughter</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</ [...]
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> parent,
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> regionA,
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> regionB)</span>
@@ -568,7 +565,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="getInheritedFNForDaughter(org.apache.hadoop.hbase.favored.FavoredNodeAssignmentHelper,java.util.List,org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position,org.apache.hadoop.hbase.favored.FavoredNodesPlan.Position)">
<h3>getInheritedFNForDaughter</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalan [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalan [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> parentFavoredNodes,
<a href="../../favored/FavoredNodesPlan.Position.html" title="enum class in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a> primary,
<a href="../../favored/FavoredNodesPlan.Position.html" title="enum class in org.apache.hadoop.hbase.favored">FavoredNodesPlan.Position</a> secondary)</span>
@@ -582,7 +579,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="generateFavoredNodesForMergedRegion(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.client.RegionInfo[])">
<h3>generateFavoredNodesForMergedRegion</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-504">generateFavoredNodesForMergedRegion</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> merged,
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochasticBalancer.html#line-507">generateFavoredNodesForMergedRegion</a></span><wbr><span class="parameters">(<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a> merged,
<a href="../../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>[] mergeParents)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<div class="block">Generate favored nodes for a region during merge. Choose the FN from one of the sources to keep
@@ -598,7 +595,7 @@ implements <a href="../../favored/FavoredNodesPromoter.html" title="interface in
<li>
<section class="detail" id="balanceTable(org.apache.hadoop.hbase.TableName,java.util.Map)">
<h3>balanceTable</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochas [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/FavoredStochas [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache. [...]
<div class="block">For all regions correctly assigned to favored nodes, we just use the stochastic balancer
implementation. For the misplaced regions, we assign a bogus server to it and AM takes care.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html
index abef307ba9f..37cd6f95bf6 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/HeterogeneousRegionCountCostFunction.html
@@ -236,7 +236,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">set [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">set [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html
index 0f5376dc24a..fd39d2c4c44 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html
@@ -84,7 +84,7 @@ loadScripts(document, 'script');</script>
</dl>
<hr>
<div class="type-signature"><span class="annotations">@Private
-</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-28">LocalityBasedCostFunction</a></span>
+</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-29">LocalityBasedCostFunction</a></span>
<span class="extends-implements">extends <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span></div>
<div class="block">Compute a cost of a potential cluster configuration based upon where
<a href="../../regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver"><code>HStoreFile</code></a>s are located.</div>
@@ -169,7 +169,7 @@ loadScripts(document, 'script');</script>
int newServer)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java [...]
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -197,19 +197,19 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="type">
<h3>type</h3>
-<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="BalancerClusterState.LocalityType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState.LocalityType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-31">type</a></span></div>
+<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="BalancerClusterState.LocalityType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState.LocalityType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-32">type</a></span></div>
</section>
</li>
<li>
<section class="detail" id="bestLocality">
<h3>bestLocality</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-33">bestLocality</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-34">bestLocality</a></span></div>
</section>
</li>
<li>
<section class="detail" id="locality">
<h3>locality</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-34">locality</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-35">locality</a></span></div>
</section>
</li>
</ul>
@@ -223,7 +223,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>(org.apache.hadoop.conf.Configuration,org.apache.hadoop.hbase.master.balancer.BalancerClusterState.LocalityType,java.lang.String,float)">
<h3>LocalityBasedCostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-36">LocalityBasedCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf,
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-37">LocalityBasedCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf,
<a href="BalancerClusterState.LocalityType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState.LocalityType</a> type,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> localityCostKey,
float defaultLocalityCost)</span></div>
@@ -240,14 +240,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionIndexToEntityIndex(int)">
<h3>regionIndexToEntityIndex</h3>
-<div class="member-signature"><span class="modifiers">abstract</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-47">regionIndexToEntityIndex</a></span><wbr><span class="parameters">(int region)</span></div>
+<div class="member-signature"><span class="modifiers">abstract</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-48">regionIndexToEntityIndex</a></span><wbr><span class="parameters">(int region)</span></div>
<div class="block">Maps region to the current entity (server or rack) on which it is stored</div>
</section>
</li>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-49">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-50">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">CostFunction</a></code></span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
@@ -260,7 +260,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionMoved(int,int,int)">
<h3>regionMoved</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-66">regionMoved</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-67">regionMoved</a></span><wbr><span class="parameters">(int region,
int oldServer,
int newServer)</span></div>
<dl class="notes">
@@ -272,7 +272,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-78">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-79">cost</a></span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CostFunction.html#cost()">cost</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -282,27 +282,27 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="getMostLocalEntityForRegion(int)">
<h3>getMostLocalEntityForRegion</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-83">getMostLocalEntityForRegion</a></span><wbr><span class="parameters">(int region)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-84">getMostLocalEntityForRegion</a></span><wbr><span class="parameters">(int region)</span></div>
</section>
</li>
<li>
<section class="detail" id="getWeightedLocality(int,int)">
<h3>getWeightedLocality</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-87">getWeightedLocality</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-88">getWeightedLocality</a></span><wbr><span class="parameters">(int region,
int entity)</span></div>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-91">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
-<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(double%5B%5D)">CostFunction</a></code></span></div>
+<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/LocalityBasedCostFunction.html#line-92">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="h [...]
+<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(java.util.Map)">CostFunction</a></code></span></div>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
<dl class="notes">
<dt>Overrides:</dt>
-<dd><code><a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
+<dd><code><a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
<dt>Parameters:</dt>
<dd><code>weights</code> - the weights for every generator.</dd>
</dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/MemStoreSizeCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/MemStoreSizeCostFunction.html
index 57fc88d6345..b848c22ce70 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/MemStoreSizeCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/MemStoreSizeCostFunction.html
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html
index 62066c8931c..a49bfb61c59 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/MoveCostFunction.html
@@ -174,7 +174,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">set [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">set [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html
index 614588ebda5..7d882a0e340 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/PrimaryRegionCountSkewCostFunction.html
@@ -160,7 +160,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code></div>
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html
index 2a9a739d585..a1ebcc2b38e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/RackLocalityCostFunction.html
@@ -142,7 +142,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.LocalityBasedCostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="LocalityBasedCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCostFunction</a></h3>
-<code><a href="LocalityBasedCostFunction.html#cost()">cost</a>, <a href="LocalityBasedCostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="LocalityBasedCostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="LocalityBasedCostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code></div>
+<code><a href="LocalityBasedCostFunction.html#cost()">cost</a>, <a href="LocalityBasedCostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="LocalityBasedCostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="LocalityBasedCostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a></code></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html
index 9562661f44a..96912395a54 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/ReadRequestCostFunction.html
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html
index e22d5ea11a0..15f2c5c171b 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html
@@ -80,7 +80,7 @@ loadScripts(document, 'script');</script>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="annotations">@Private
-</span><span class="modifiers">class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-26">RegionCountSkewCostFunction</a></span>
+</span><span class="modifiers">class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-27">RegionCountSkewCostFunction</a></span>
<span class="extends-implements">extends <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span></div>
<div class="block">Compute the cost of a potential cluster state from skew in number of regions on a cluster.</div>
</section>
@@ -149,7 +149,7 @@ loadScripts(document, 'script');</script>
int newServer)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java. [...]
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -177,7 +177,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="REGION_COUNT_SKEW_COST_KEY">
<h3>REGION_COUNT_SKEW_COST_KEY</h3>
-<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-28">REGION_COUNT_SKEW_COST_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-29">REGION_COUNT_SKEW_COST_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -191,7 +191,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_REGION_COUNT_SKEW_COST">
<h3>DEFAULT_REGION_COUNT_SKEW_COST</h3>
-<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-30">DEFAULT_REGION_COUNT_SKEW_COST</a></span></div>
+<div class="member-signature"><span class="modifiers">static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-31">DEFAULT_REGION_COUNT_SKEW_COST</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -205,7 +205,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="DoubleArrayCost.html" title="class in org.apache.hadoop.hbase.master.balancer">DoubleArrayCost</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-32">cost</a></span></div>
+<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="DoubleArrayCost.html" title="class in org.apache.hadoop.hbase.master.balancer">DoubleArrayCost</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-33">cost</a></span></div>
</section>
</li>
</ul>
@@ -219,7 +219,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>(org.apache.hadoop.conf.Configuration)">
<h3>RegionCountSkewCostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-34">RegionCountSkewCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-35">RegionCountSkewCostFunction</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
</section>
</li>
</ul>
@@ -233,7 +233,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-39">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-40">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">CostFunction</a></code></span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
@@ -246,7 +246,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-50">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-51">cost</a></span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CostFunction.html#cost()">cost</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -256,7 +256,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="regionMoved(int,int,int)">
<h3>regionMoved</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-55">regionMoved</a></span><wbr><span class="parameters">(int region,
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-56">regionMoved</a></span><wbr><span class="parameters">(int region,
int oldServer,
int newServer)</span></div>
<dl class="notes">
@@ -266,16 +266,16 @@ loadScripts(document, 'script');</script>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-63">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
-<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(double%5B%5D)">CostFunction</a></code></span></div>
+<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionCountSkewCostFunction.html#line-64">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href= [...]
+<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(java.util.Map)">CostFunction</a></code></span></div>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
<dl class="notes">
<dt>Overrides:</dt>
-<dd><code><a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
+<dd><code><a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
<dt>Parameters:</dt>
<dd><code>weights</code> - the weights for every generator.</dd>
</dl>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html
index 5410e3df714..069a62a7c07 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html
@@ -84,7 +84,7 @@ loadScripts(document, 'script');</script>
</dl>
<hr>
<div class="type-signature"><span class="annotations">@Private
-</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-30">RegionReplicaGroupingCostFunction</a></span>
+</span><span class="modifiers">abstract class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-31">RegionReplicaGroupingCostFunction</a></span>
<span class="extends-implements">extends <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span></div>
<div class="block">A cost function for region replicas. We give a high cost for hosting replicas of the same region
in the same server, host or rack. We do not prevent the case though, since if numReplicas >
@@ -162,7 +162,7 @@ loadScripts(document, 'script');</script>
any costly calculation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(double%5B%5D)" class="member-name-link">updateWeight</a><wbr>(double[] weights)</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java [...]
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function.</div>
@@ -190,13 +190,13 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="maxCost">
<h3>maxCost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-32">maxCost</a></span></div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-33">maxCost</a></span></div>
</section>
</li>
<li>
<section class="detail" id="costsPerGroup">
<h3>costsPerGroup</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">long[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-33">costsPerGroup</a></span></div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">long[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-34">costsPerGroup</a></span></div>
</section>
</li>
</ul>
@@ -210,7 +210,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>RegionReplicaGroupingCostFunction</h3>
-<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-31">RegionReplicaGroupingCostFunction</a></span>()</div>
+<div class="member-signature"><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-32">RegionReplicaGroupingCostFunction</a></span>()</div>
</section>
</li>
</ul>
@@ -224,7 +224,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>prepare</h3>
-<div class="member-signature"><span class="modifiers">final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-35">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="modifiers">final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-36">prepare</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">CostFunction</a></code></span></div>
<div class="block">Called once per LB invocation to give the cost function to initialize it's state, and perform
any costly calculation.</div>
@@ -237,19 +237,19 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="loadCosts()">
<h3>loadCosts</h3>
-<div class="member-signature"><span class="modifiers">protected abstract</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-44">loadCosts</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected abstract</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-45">loadCosts</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="getMaxCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>getMaxCost</h3>
-<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-46">getMaxCost</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-47">getMaxCost</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
</section>
</li>
<li>
<section class="detail" id="isNeeded()">
<h3>isNeeded</h3>
-<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-57">isNeeded</a></span>()</div>
+<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-58">isNeeded</a></span>()</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="CostFunction.html#isNeeded()">isNeeded</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -259,7 +259,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="cost()">
<h3>cost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-62">cost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-63">cost</a></span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="CostFunction.html#cost()">cost</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
@@ -267,16 +267,16 @@ loadScripts(document, 'script');</script>
</section>
</li>
<li>
-<section class="detail" id="updateWeight(double[])">
+<section class="detail" id="updateWeight(java.util.Map)">
<h3>updateWeight</h3>
-<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-75">updateWeight</a></span><wbr><span class="parameters">(double[] weights)</span></div>
-<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(double%5B%5D)">CostFunction</a></code></span></div>
+<div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-76">updateWeight</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a [...]
+<div class="block"><span class="descfrm-type-label">Description copied from class: <code><a href="CostFunction.html#updateWeight(java.util.Map)">CostFunction</a></code></span></div>
<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
for this cost function. By default it is the RandomCandiateGenerator for a cost function.
Called once per init or after postAction.</div>
<dl class="notes">
<dt>Overrides:</dt>
-<dd><code><a href="CostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
+<dd><code><a href="CostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code> in class <code><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></dd>
<dt>Parameters:</dt>
<dd><code>weights</code> - the weights for every generator.</dd>
</dl>
@@ -285,7 +285,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="costPerGroup(org.agrona.collections.Int2IntCounterMap)">
<h3>costPerGroup</h3>
-<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-88">costPerGroup</a></span><wbr><span class="parameters">(org.agrona.collections.Int2IntCounterMap colocatedReplicaCounts)</span></div>
+<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/RegionReplicaGroupingCostFunction.html#line-89">costPerGroup</a></span><wbr><span class="parameters">(org.agrona.collections.Int2IntCounterMap colocatedReplicaCounts)</span></div>
<div class="block">For each primary region, it computes the total number of replicas in the array (numReplicas)
and returns a sum of numReplicas-1 squared. For example, if the server hosts regions a, b, c,
d, e, f where a and b are same replicas, and c,d,e are same replicas, it returns (2-1) * (2-1)
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaHostCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaHostCostFunction.html
index 8b15ff2ca29..82a5238fb7b 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaHostCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaHostCostFunction.html
@@ -154,7 +154,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.RegionReplicaGroupingCostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="RegionReplicaGroupingCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaGroupingCostFunction</a></h3>
-<code><a href="RegionReplicaGroupingCostFunction.html#cost()">cost</a>, <a href="RegionReplicaGroupingCostFunction.html#costPerGroup(org.agrona.collections.Int2IntCounterMap)">costPerGroup</a>, <a href="RegionReplicaGroupingCostFunction.html#getMaxCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">getMaxCost</a>, <a href="RegionReplicaGroupingCostFunction.html#isNeeded()">isNeeded</a>, <a href="RegionReplicaGroupingCostFunction.html#prepare(org.apache.hadoop.hbase.master [...]
+<code><a href="RegionReplicaGroupingCostFunction.html#cost()">cost</a>, <a href="RegionReplicaGroupingCostFunction.html#costPerGroup(org.agrona.collections.Int2IntCounterMap)">costPerGroup</a>, <a href="RegionReplicaGroupingCostFunction.html#getMaxCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">getMaxCost</a>, <a href="RegionReplicaGroupingCostFunction.html#isNeeded()">isNeeded</a>, <a href="RegionReplicaGroupingCostFunction.html#prepare(org.apache.hadoop.hbase.master [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a></code></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaRackCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaRackCostFunction.html
index df808535d46..d98cfbab223 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaRackCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/RegionReplicaRackCostFunction.html
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.RegionReplicaGroupingCostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="RegionReplicaGroupingCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaGroupingCostFunction</a></h3>
-<code><a href="RegionReplicaGroupingCostFunction.html#cost()">cost</a>, <a href="RegionReplicaGroupingCostFunction.html#costPerGroup(org.agrona.collections.Int2IntCounterMap)">costPerGroup</a>, <a href="RegionReplicaGroupingCostFunction.html#getMaxCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">getMaxCost</a>, <a href="RegionReplicaGroupingCostFunction.html#isNeeded()">isNeeded</a>, <a href="RegionReplicaGroupingCostFunction.html#prepare(org.apache.hadoop.hbase.master [...]
+<code><a href="RegionReplicaGroupingCostFunction.html#cost()">cost</a>, <a href="RegionReplicaGroupingCostFunction.html#costPerGroup(org.agrona.collections.Int2IntCounterMap)">costPerGroup</a>, <a href="RegionReplicaGroupingCostFunction.html#getMaxCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">getMaxCost</a>, <a href="RegionReplicaGroupingCostFunction.html#isNeeded()">isNeeded</a>, <a href="RegionReplicaGroupingCostFunction.html#prepare(org.apache.hadoop.hbase.master [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a></code></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html
index cdf0a9bf463..4f9518452d7 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/ServerLocalityCostFunction.html
@@ -142,7 +142,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.LocalityBasedCostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="LocalityBasedCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCostFunction</a></h3>
-<code><a href="LocalityBasedCostFunction.html#cost()">cost</a>, <a href="LocalityBasedCostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="LocalityBasedCostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="LocalityBasedCostFunction.html#updateWeight(double%5B%5D)">updateWeight</a></code></div>
+<code><a href="LocalityBasedCostFunction.html#cost()">cost</a>, <a href="LocalityBasedCostFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="LocalityBasedCostFunction.html#regionMoved(int,int,int)">regionMoved</a>, <a href="LocalityBasedCostFunction.html#updateWeight(java.util.Map)">updateWeight</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a></code></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html
deleted file mode 100644
index 6e46211a61f..00000000000
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html
+++ /dev/null
@@ -1,271 +0,0 @@
-<!DOCTYPE HTML>
-<html lang="en">
-<head>
-<!-- Generated by javadoc (17) -->
-<title>StochasticLoadBalancer.GeneratorType (Apache HBase 4.0.0-alpha-1-SNAPSHOT API)</title>
-<meta name="viewport" content="width=device-width, initial-scale=1">
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="description" content="declaration: package: org.apache.hadoop.hbase.master.balancer, class: StochasticLoadBalancer, enum: GeneratorType">
-<meta name="generator" content="javadoc/ClassWriterImpl">
-<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
-<script type="text/javascript" src="../../../../../../script.js"></script>
-<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.1.min.js"></script>
-<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
-</head>
-<body class="class-declaration-page">
-<script type="text/javascript">var evenRowColor = "even-row-color";
-var oddRowColor = "odd-row-color";
-var tableTab = "table-tab";
-var activeTableTab = "active-table-tab";
-var pathtoroot = "../../../../../../";
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<div class="flex-box">
-<header role="banner" class="flex-header">
-<nav role="navigation">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="top-nav" id="navbar-top">
-<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
-<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
-<li><a href="../../../../../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="nav-bar-cell1-rev">Class</li>
-<li><a href="class-use/StochasticLoadBalancer.GeneratorType.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#class">Help</a></li>
-</ul>
-</div>
-<div class="sub-nav">
-<div>
-<ul class="sub-nav-list">
-<li>Summary: </li>
-<li><a href="#nested-class-summary">Nested</a> | </li>
-<li><a href="#enum-constant-summary">Enum Constants</a> | </li>
-<li>Field | </li>
-<li><a href="#method-summary">Method</a></li>
-</ul>
-<ul class="sub-nav-list">
-<li>Detail: </li>
-<li><a href="#enum-constant-detail">Enum Constants</a> | </li>
-<li>Field | </li>
-<li><a href="#method-detail">Method</a></li>
-</ul>
-</div>
-<div class="nav-list-search"><label for="search-input">SEARCH:</label>
-<input type="text" id="search-input" value="search" disabled="disabled">
-<input type="reset" id="reset-button" value="reset" disabled="disabled">
-</div>
-</div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<span class="skip-nav" id="skip-navbar-top"></span></nav>
-</header>
-<div class="flex-content">
-<main role="main">
-<!-- ======== START OF CLASS DATA ======== -->
-<div class="header">
-<div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">org.apache.hadoop.hbase.master.balancer</a></div>
-<h1 title="Enum Class StochasticLoadBalancer.GeneratorType" class="title">Enum Class StochasticLoadBalancer.GeneratorType</h1>
-</div>
-<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
-<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">java.lang.Enum</a><<a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a>>
-<div class="inheritance">org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.GeneratorType</div>
-</div>
-</div>
-<section class="class-description" id="class-description">
-<dl class="notes">
-<dt>All Implemented Interfaces:</dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a><<a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">Sto [...]
-</dl>
-<dl class="notes">
-<dt>Enclosing class:</dt>
-<dd><a href="StochasticLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer</a></dd>
-</dl>
-<hr>
-<div class="type-signature"><span class="modifiers">public static enum </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-162">StochasticLoadBalancer.GeneratorType</a></span>
-<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a><<a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a>></span></div>
-</section>
-<section class="summary">
-<ul class="summary-list">
-<!-- ======== NESTED CLASS SUMMARY ======== -->
-<li>
-<section class="nested-class-summary" id="nested-class-summary">
-<h2>Nested Class Summary</h2>
-<div class="inherited-list">
-<h2 id="nested-classes-inherited-from-class-java.lang.Enum">Nested classes/interfaces inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h2>
-<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">Enum.EnumDesc</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a> extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.la [...]
-</section>
-</li>
-<!-- =========== ENUM CONSTANT SUMMARY =========== -->
-<li>
-<section class="constants-summary" id="enum-constant-summary">
-<h2>Enum Constant Summary</h2>
-<div class="caption"><span>Enum Constants</span></div>
-<div class="summary-table two-column-summary">
-<div class="table-header col-first">Enum Constant</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code><a href="#LOAD" class="member-name-link">LOAD</a></code></div>
-<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code><a href="#LOCALITY" class="member-name-link">LOCALITY</a></code></div>
-<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code><a href="#RACK" class="member-name-link">RACK</a></code></div>
-<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code><a href="#RANDOM" class="member-name-link">RANDOM</a></code></div>
-<div class="col-last odd-row-color"> </div>
-</div>
-</section>
-</li>
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<li>
-<section class="constructor-summary" id="constructor-summary">
-<h2>Constructor Summary</h2>
-<div class="caption"><span>Constructors</span></div>
-<div class="summary-table three-column-summary">
-<div class="table-header col-first">Modifier</div>
-<div class="table-header col-second">Constructor</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>private </code></div>
-<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">GeneratorType</a>()</code></div>
-<div class="col-last even-row-color"> </div>
-</div>
-</section>
-</li>
-<!-- ========== METHOD SUMMARY =========== -->
-<li>
-<section class="method-summary" id="method-summary">
-<h2>Method Summary</h2>
-<div id="method-summary-table">
-<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab( [...]
-<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
-<div class="summary-table three-column-summary">
-<div class="table-header col-first">Modifier and Type</div>
-<div class="table-header col-second">Method</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</code></div>
-<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
-<div class="block">Returns the enum constant of this class with the specified name.</div>
-</div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a>[]</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#values()" class="member-name-link">values</a>()</code></div>
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
-<div class="block">Returns an array containing the constants of this enum class, in
-the order they are declared.</div>
-</div>
-</div>
-</div>
-</div>
-<div class="inherited-list">
-<h3 id="methods-inherited-from-class-java.lang.Enum">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h3>
-<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#compareTo(E)" title="class or interface in java.lang" class="external-link">compareTo</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#describeConstable()" title="class or interf [...]
-<div class="inherited-list">
-<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
-<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface [...]
-</section>
-</li>
-</ul>
-</section>
-<section class="details">
-<ul class="details-list">
-<!-- ============ ENUM CONSTANT DETAIL =========== -->
-<li>
-<section class="constant-details" id="enum-constant-detail">
-<h2>Enum Constant Details</h2>
-<ul class="member-list">
-<li>
-<section class="detail" id="RANDOM">
-<h3>RANDOM</h3>
-<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-163">RANDOM</a></span></div>
-</section>
-</li>
-<li>
-<section class="detail" id="LOAD">
-<h3>LOAD</h3>
-<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-164">LOAD</a></span></div>
-</section>
-</li>
-<li>
-<section class="detail" id="LOCALITY">
-<h3>LOCALITY</h3>
-<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-165">LOCALITY</a></span></div>
-</section>
-</li>
-<li>
-<section class="detail" id="RACK">
-<h3>RACK</h3>
-<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-166">RACK</a></span></div>
-</section>
-</li>
-</ul>
-</section>
-</li>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<li>
-<section class="constructor-details" id="constructor-detail">
-<h2>Constructor Details</h2>
-<ul class="member-list">
-<li>
-<section class="detail" id="<init>()">
-<h3>GeneratorType</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-162">GeneratorType</a></span>()</div>
-</section>
-</li>
-</ul>
-</section>
-</li>
-<!-- ============ METHOD DETAIL ========== -->
-<li>
-<section class="method-details" id="method-detail">
-<h2>Method Details</h2>
-<ul class="member-list">
-<li>
-<section class="detail" id="values()">
-<h3>values</h3>
-<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a>[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-162">values</a></span>()</div>
-<div class="block">Returns an array containing the constants of this enum class, in
-the order they are declared.</div>
-<dl class="notes">
-<dt>Returns:</dt>
-<dd>an array containing the constants of this enum class, in the order they are declared</dd>
-</dl>
-</section>
-</li>
-<li>
-<section class="detail" id="valueOf(java.lang.String)">
-<h3>valueOf</h3>
-<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html#line-162">valueOf</a></span><wbr><span class="parameters">(<a href="https: [...]
-<div class="block">Returns the enum constant of this class with the specified name.
-The string must match <i>exactly</i> an identifier used to declare an
-enum constant in this class. (Extraneous whitespace characters are
-not permitted.)</div>
-<dl class="notes">
-<dt>Parameters:</dt>
-<dd><code>name</code> - the name of the enum constant to be returned.</dd>
-<dt>Returns:</dt>
-<dd>the enum constant with the specified name</dd>
-<dt>Throws:</dt>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if this enum class has no constant with the specified name</dd>
-<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - if the argument is null</dd>
-</dl>
-</section>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</section>
-<!-- ========= END OF CLASS DATA ========= -->
-</main>
-<footer role="contentinfo">
-<hr>
-<p class="legal-copy"><small>Copyright © 2007–2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
-</footer>
-</div>
-</div>
-</body>
-</html>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html
index 171fa0bdb36..831bf51d9ec 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html
@@ -45,7 +45,7 @@ loadScripts(document, 'script');</script>
<div>
<ul class="sub-nav-list">
<li>Summary: </li>
-<li><a href="#nested-class-summary">Nested</a> | </li>
+<li>Nested | </li>
<li><a href="#field-summary">Field</a> | </li>
<li><a href="#constructor-summary">Constr</a> | </li>
<li><a href="#method-summary">Method</a></li>
@@ -88,7 +88,7 @@ loadScripts(document, 'script');</script>
</dl>
<hr>
<div class="type-signature"><span class="annotations">@LimitedPrivate("Configuration")
-</span><span class="modifiers">public class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-105">StochasticLoadBalancer</a></span>
+</span><span class="modifiers">public class </span><span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-111">StochasticLoadBalancer</a></span>
<span class="extends-implements">extends <a href="BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></span></div>
<div class="block"><p>
This is a best effort load balancer. Given a Cost function F(C) => x It will randomly try and
@@ -145,21 +145,6 @@ loadScripts(document, 'script');</script>
</section>
<section class="summary">
<ul class="summary-list">
-<!-- ======== NESTED CLASS SUMMARY ======== -->
-<li>
-<section class="nested-class-summary" id="nested-class-summary">
-<h2>Nested Class Summary</h2>
-<div class="caption"><span>Nested Classes</span></div>
-<div class="summary-table three-column-summary">
-<div class="table-header col-first">Modifier and Type</div>
-<div class="table-header col-second">Class</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>static enum </code></div>
-<div class="col-second even-row-color"><code><a href="StochasticLoadBalancer.GeneratorType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></code></div>
-<div class="col-last even-row-color"> </div>
-</div>
-</section>
-</li>
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
@@ -169,7 +154,7 @@ loadScripts(document, 'script');</script>
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candida [...]
<div class="col-second even-row-color"><code><a href="#candidateGenerators" class="member-name-link">candidateGenerators</a></code></div>
<div class="col-last even-row-color"> </div>
<div class="col-first odd-row-color"><code>protected static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
@@ -259,24 +244,27 @@ loadScripts(document, 'script');</script>
<div class="col-first odd-row-color"><code>private boolean</code></div>
<div class="col-second odd-row-color"><code><a href="#runMaxSteps" class="member-name-link">runMaxSteps</a></code></div>
<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code>protected static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
-<div class="col-second even-row-color"><code><a href="#STEPS_PER_REGION_KEY" class="member-name-link">STEPS_PER_REGION_KEY</a></code></div>
+<div class="col-first even-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/l [...]
+<div class="col-second even-row-color"><code><a href="#shuffledGeneratorClasses" class="member-name-link">shuffledGeneratorClasses</a></code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>private int</code></div>
-<div class="col-second odd-row-color"><code><a href="#stepsPerRegion" class="member-name-link">stepsPerRegion</a></code></div>
+<div class="col-first odd-row-color"><code>protected static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
+<div class="col-second odd-row-color"><code><a href="#STEPS_PER_REGION_KEY" class="member-name-link">STEPS_PER_REGION_KEY</a></code></div>
<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code>private float</code></div>
-<div class="col-second even-row-color"><code><a href="#sumMultiplier" class="member-name-link">sumMultiplier</a></code></div>
+<div class="col-first even-row-color"><code>private int</code></div>
+<div class="col-second even-row-color"><code><a href="#stepsPerRegion" class="member-name-link">stepsPerRegion</a></code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>private static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
-<div class="col-second odd-row-color"><code><a href="#TABLE_FUNCTION_SEP" class="member-name-link">TABLE_FUNCTION_SEP</a></code></div>
+<div class="col-first odd-row-color"><code>private float</code></div>
+<div class="col-second odd-row-color"><code><a href="#sumMultiplier" class="member-name-link">sumMultiplier</a></code></div>
<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code>private double[]</code></div>
-<div class="col-second even-row-color"><code><a href="#tempFunctionCosts" class="member-name-link">tempFunctionCosts</a></code></div>
+<div class="col-first even-row-color"><code>private static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
+<div class="col-second even-row-color"><code><a href="#TABLE_FUNCTION_SEP" class="member-name-link">TABLE_FUNCTION_SEP</a></code></div>
<div class="col-last even-row-color"> </div>
<div class="col-first odd-row-color"><code>private double[]</code></div>
-<div class="col-second odd-row-color"><code><a href="#weightsOfGenerators" class="member-name-link">weightsOfGenerators</a></code></div>
+<div class="col-second odd-row-color"><code><a href="#tempFunctionCosts" class="member-name-link">tempFunctionCosts</a></code></div>
<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>private final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Can [...]
+<div class="col-second even-row-color"><code><a href="#weightsOfGenerators" class="member-name-link">weightsOfGenerators</a></code></div>
+<div class="col-last even-row-color"> </div>
</div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer">Fields inherited from class org.apache.hadoop.hbase.master.balancer.<a href="BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></h3>
@@ -343,7 +331,7 @@ loadScripts(document, 'script');</script>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">This is the main cost function.</div>
</div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerat [...]
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>private static <a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></code></div>
@@ -366,7 +354,7 @@ loadScripts(document, 'script');</script>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBalanceReason(double,double)" class="member-name-link">getBalanceReason</a><wbr>(double total,
double sumMultiplier)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="Candidat [...]
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCandidateGenerators()" class="member-name-link">getCandidateGenerators</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</code></div>
@@ -395,62 +383,65 @@ loadScripts(document, 'script');</script>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#needsBalance(org.apache.hadoop.hbase.TableName,org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">needsBalance</a><wbr>(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) <a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) <a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendRegionPlansToRingBuffer(java.util.List,double,double,java.lang.String,long)" class="member-name-link">sendRegionPlansToRingBuffer</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.h [...]
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#pickAnyGenerator(java.util.List)" class="member-name-link">pickAnyGenerator</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interfa [...]
+<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendRegionPlansToRingBuffer(java.util.List,double,double,java.lang.String,long)" class="member-name-link">sendRegionPlansToRingBuffer</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache. [...]
double currentCost,
double initCost,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> initFunctionTotalCosts,
long step)</code></div>
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendRejectionReasonToRingBuffer(java.util.function.Supplier,java.util.List)" class="member-name-link">sendRejectionReasonToRingBuffer</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a><<a href="https://docs.oracle.c [...]
- <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>> costFunctions)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setRackManager(org.apache.hadoop.hbase.master.RackManager)" class="member-name-link">setRackManager</a><wbr>(<a href="../RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a> rackManager)</code></div>
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendRejectionReasonToRingBuffer(java.util.function.Supplier,java.util.List)" class="member-name-link">sendRejectionReasonToRingBuffer</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a><<a href="https://docs.oracle.co [...]
+ <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>> costFunctions)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#totalCostsPerFunc()" class="member-name-link">totalCostsPerFunc</a>()</code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setRackManager(org.apache.hadoop.hbase.master.RackManager)" class="member-name-link">setRackManager</a><wbr>(<a href="../RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a> rackManager)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateBalancerLoadInfo(java.util.Map)" class="member-name-link">updateBalancerLoadInfo</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<wbr><a href="https: [...]
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#totalCostsPerFunc()" class="member-name-link">totalCostsPerFunc</a>()</code></div>
+<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateBalancerLoadInfo(java.util.Map)" class="member-name-link">updateBalancerLoadInfo</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<wbr><a href="https [...]
+<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">In some scenarios, Balancer needs to update internal status or information according to the
current tables load</div>
</div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateBalancerTableLoadInfo(org.apache.hadoop.hbase.TableName,java.util.Map)" class="member-name-link">updateBalancerTableLoadInfo</a><wbr>(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateBalancerTableLoadInfo(org.apache.hadoop.hbase.TableName,java.util.Map)" class="member-name-link">updateBalancerTableLoadInfo</a><wbr>(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache. [...]
-<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)" class="member-name-link">updateClusterMetrics</a><wbr>(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> st)</code></div>
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)" class="member-name-link">updateClusterMetrics</a><wbr>(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> st)</code></div>
+<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Set the current cluster status.</div>
</div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateCostsAndWeightsWithAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,org.apache.hadoop.hbase.master.balancer.BalanceAction)" class="member-name-link">updateCostsAndWeightsWithAction</a><wbr>(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateCostsAndWeightsWithAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,org.apache.hadoop.hbase.master.balancer.BalanceAction)" class="member-name-link">updateCostsAndWeightsWithAction</a><wbr>(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
<a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a> action)</code></div>
-<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Update both the costs of costfunctions and the weights of candidate generators</div>
</div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateMetricsSize(int)" class="member-name-link">updateMetricsSize</a><wbr>(int size)</code></div>
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>(package private) void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateMetricsSize(int)" class="member-name-link">updateMetricsSize</a><wbr>(int size)</code></div>
+<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Update the number of metrics that are reported to JMX</div>
</div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateRegionLoad()" class="member-name-link">updateRegionLoad</a>()</code></div>
-<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateRegionLoad()" class="member-name-link">updateRegionLoad</a>()</code></div>
+<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Store the current region loads.</div>
</div>
-<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateStochasticCosts(org.apache.hadoop.hbase.TableName,double,double%5B%5D)" class="member-name-link">updateStochasticCosts</a><wbr>(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateStochasticCosts(org.apache.hadoop.hbase.TableName,double,double%5B%5D)" class="member-name-link">updateStochasticCosts</a><wbr>(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
double overall,
double[] subCosts)</code></div>
-<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
+<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">update costs to JMX</div>
</div>
</div>
@@ -476,13 +467,13 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="LOG">
<h3>LOG</h3>
-<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type">org.slf4j.Logger</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-108">LOG</a></span></div>
+<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type">org.slf4j.Logger</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-114">LOG</a></span></div>
</section>
</li>
<li>
<section class="detail" id="STEPS_PER_REGION_KEY">
<h3>STEPS_PER_REGION_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-110">STEPS_PER_REGION_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-116">STEPS_PER_REGION_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -496,7 +487,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_STEPS_PER_REGION">
<h3>DEFAULT_STEPS_PER_REGION</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-112">DEFAULT_STEPS_PER_REGION</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-118">DEFAULT_STEPS_PER_REGION</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -510,7 +501,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="MAX_STEPS_KEY">
<h3>MAX_STEPS_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-113">MAX_STEPS_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-119">MAX_STEPS_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -524,7 +515,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_MAX_STEPS">
<h3>DEFAULT_MAX_STEPS</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-114">DEFAULT_MAX_STEPS</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-120">DEFAULT_MAX_STEPS</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -538,7 +529,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="RUN_MAX_STEPS_KEY">
<h3>RUN_MAX_STEPS_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-115">RUN_MAX_STEPS_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-121">RUN_MAX_STEPS_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -552,7 +543,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_RUN_MAX_STEPS">
<h3>DEFAULT_RUN_MAX_STEPS</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-116">DEFAULT_RUN_MAX_STEPS</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-122">DEFAULT_RUN_MAX_STEPS</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -566,7 +557,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="MAX_RUNNING_TIME_KEY">
<h3>MAX_RUNNING_TIME_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-117">MAX_RUNNING_TIME_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-123">MAX_RUNNING_TIME_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -580,7 +571,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_MAX_RUNNING_TIME">
<h3>DEFAULT_MAX_RUNNING_TIME</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-119">DEFAULT_MAX_RUNNING_TIME</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-125">DEFAULT_MAX_RUNNING_TIME</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -594,7 +585,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="KEEP_REGION_LOADS">
<h3>KEEP_REGION_LOADS</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-120">KEEP_REGION_LOADS</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-126">KEEP_REGION_LOADS</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -608,7 +599,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_KEEP_REGION_LOADS">
<h3>DEFAULT_KEEP_REGION_LOADS</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-122">DEFAULT_KEEP_REGION_LOADS</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-128">DEFAULT_KEEP_REGION_LOADS</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -622,7 +613,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="TABLE_FUNCTION_SEP">
<h3>TABLE_FUNCTION_SEP</h3>
-<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-123">TABLE_FUNCTION_SEP</a></span></div>
+<div class="member-signature"><span class="modifiers">private static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-129">TABLE_FUNCTION_SEP</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -636,7 +627,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="MIN_COST_NEED_BALANCE_KEY">
<h3>MIN_COST_NEED_BALANCE_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-124">MIN_COST_NEED_BALANCE_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-130">MIN_COST_NEED_BALANCE_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -650,7 +641,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="DEFAULT_MIN_COST_NEED_BALANCE">
<h3>DEFAULT_MIN_COST_NEED_BALANCE</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-126">DEFAULT_MIN_COST_NEED_BALANCE</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-132">DEFAULT_MIN_COST_NEED_BALANCE</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -664,7 +655,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="COST_FUNCTIONS_COST_FUNCTIONS_KEY">
<h3>COST_FUNCTIONS_COST_FUNCTIONS_KEY</h3>
-<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-127">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a></span></div>
+<div class="member-signature"><span class="modifiers">protected static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-133">COST_FUNCTIONS_COST_FUNCTIONS_KEY</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -678,7 +669,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="OVERALL_COST_FUNCTION_NAME">
<h3>OVERALL_COST_FUNCTION_NAME</h3>
-<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-129">OVERALL_COST_FUNCTION_NAME</a></span></div>
+<div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-135">OVERALL_COST_FUNCTION_NAME</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
@@ -692,121 +683,127 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="loads">
<h3>loads</h3>
-<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Deque.html" title="cla [...]
+<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Deque.html" title="cla [...]
</section>
</li>
<li>
<section class="detail" id="maxSteps">
<h3>maxSteps</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-134">maxSteps</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-140">maxSteps</a></span></div>
</section>
</li>
<li>
<section class="detail" id="runMaxSteps">
<h3>runMaxSteps</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-135">runMaxSteps</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-141">runMaxSteps</a></span></div>
</section>
</li>
<li>
<section class="detail" id="stepsPerRegion">
<h3>stepsPerRegion</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-136">stepsPerRegion</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-142">stepsPerRegion</a></span></div>
</section>
</li>
<li>
<section class="detail" id="maxRunningTime">
<h3>maxRunningTime</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-137">maxRunningTime</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-143">maxRunningTime</a></span></div>
</section>
</li>
<li>
<section class="detail" id="numRegionLoadsToRemember">
<h3>numRegionLoadsToRemember</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-138">numRegionLoadsToRemember</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">int</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-144">numRegionLoadsToRemember</a></span></div>
</section>
</li>
<li>
<section class="detail" id="minCostNeedBalance">
<h3>minCostNeedBalance</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-139">minCostNeedBalance</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-145">minCostNeedBalance</a></span></div>
</section>
</li>
<li>
<section class="detail" id="regionCacheRatioOnOldServerMap">
<h3>regionCacheRatioOnOldServerMap</h3>
-<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../. [...]
+<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../. [...]
</section>
</li>
<li>
<section class="detail" id="costFunctions">
<h3>costFunctions</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Stoc [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Stoc [...]
</section>
</li>
<li>
<section class="detail" id="sumMultiplier">
<h3>sumMultiplier</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-145">sumMultiplier</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">float</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-151">sumMultiplier</a></span></div>
</section>
</li>
<li>
<section class="detail" id="curOverallCost">
<h3>curOverallCost</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-147">curOverallCost</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-153">curOverallCost</a></span></div>
</section>
</li>
<li>
<section class="detail" id="tempFunctionCosts">
<h3>tempFunctionCosts</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-148">tempFunctionCosts</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-154">tempFunctionCosts</a></span></div>
</section>
</li>
<li>
<section class="detail" id="curFunctionCosts">
<h3>curFunctionCosts</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-149">curFunctionCosts</a></span></div>
-</section>
-</li>
-<li>
-<section class="detail" id="weightsOfGenerators">
-<h3>weightsOfGenerators</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-150">weightsOfGenerators</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">double[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-155">curFunctionCosts</a></span></div>
</section>
</li>
<li>
<section class="detail" id="localityCandidateGenerator">
<h3>localityCandidateGenerator</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="LocalityBasedCandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-154">localityCandidateGenerator</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="LocalityBasedCandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">LocalityBasedCandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-159">localityCandidateGenerator</a></span></div>
</section>
</li>
<li>
<section class="detail" id="localityCost">
<h3>localityCost</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="ServerLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">ServerLocalityCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-155">localityCost</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="ServerLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">ServerLocalityCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-160">localityCost</a></span></div>
</section>
</li>
<li>
<section class="detail" id="rackLocalityCost">
<h3>rackLocalityCost</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RackLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RackLocalityCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-156">rackLocalityCost</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RackLocalityCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RackLocalityCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-161">rackLocalityCost</a></span></div>
</section>
</li>
<li>
<section class="detail" id="regionReplicaHostCostFunction">
<h3>regionReplicaHostCostFunction</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RegionReplicaHostCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaHostCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-157">regionReplicaHostCostFunction</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RegionReplicaHostCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaHostCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-162">regionReplicaHostCostFunction</a></span></div>
</section>
</li>
<li>
<section class="detail" id="regionReplicaRackCostFunction">
<h3>regionReplicaRackCostFunction</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RegionReplicaRackCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaRackCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-158">regionReplicaRackCostFunction</a></span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="RegionReplicaRackCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">RegionReplicaRackCostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-163">regionReplicaRackCostFunction</a></span></div>
+</section>
+</li>
+<li>
+<section class="detail" id="weightsOfGenerators">
+<h3>weightsOfGenerators</h3>
+<div class="member-signature"><span class="modifiers">private final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class [...]
</section>
</li>
<li>
<section class="detail" id="candidateGenerators">
<h3>candidateGenerators</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/b [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in [...]
+</section>
+</li>
+<li>
+<section class="detail" id="shuffledGeneratorClasses">
+<h3>shuffledGeneratorClasses</h3>
+<div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle [...]
</section>
</li>
</ul>
@@ -820,7 +817,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>()">
<h3>StochasticLoadBalancer</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-173">StochasticLoadBalancer</a></span>()</div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-180">StochasticLoadBalancer</a></span>()</div>
<div class="block">The constructor that pass a MetricsStochasticBalancer to BaseLoadBalancer to replace its
default MetricsBalancer</div>
</section>
@@ -828,7 +825,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="<init>(org.apache.hadoop.hbase.master.balancer.MetricsStochasticBalancer)">
<h3>StochasticLoadBalancer</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-177">StochasticLoadBalancer</a></span><wbr><span class="parameters">(<a href="MetricsStochasticBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">MetricsStochasticBalancer</a> metricsStochasticBalancer)</span></div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-184">StochasticLoadBalancer</a></span><wbr><span class="parameters">(<a href="MetricsStochasticBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">MetricsStochasticBalancer</a> metricsStochasticBalancer)</span></div>
</section>
</li>
</ul>
@@ -842,38 +839,38 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="createCostFunction(java.lang.Class,org.apache.hadoop.conf.Configuration)">
<h3>createCostFunction</h3>
-<div class="member-signature"><span class="modifiers">private static</span> <span class="return-type"><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-183">createCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/ [...]
+<div class="member-signature"><span class="modifiers">private static</span> <span class="return-type"><a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-190">createCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/ [...]
org.apache.hadoop.conf.Configuration conf)</span></div>
</section>
</li>
<li>
<section class="detail" id="loadCustomCostFunctions(org.apache.hadoop.conf.Configuration)">
<h3>loadCustomCostFunctions</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-194">loadCustomCostFunctions</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-201">loadCustomCostFunctions</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
</section>
</li>
<li>
<section class="detail" id="getCandidateGenerators()">
<h3>getCandidateGenerators</h3>
-<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-214"> [...]
+<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candi [...]
</section>
</li>
<li>
<section class="detail" id="createCandidateGenerators()">
<h3>createCandidateGenerators</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/b [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="CandidateGenerator.html" title="class in [...]
</section>
</li>
<li>
<section class="detail" id="createCostFunctions(org.apache.hadoop.conf.Configuration)">
<h3>createCostFunctions</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Stoc [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Stoc [...]
</section>
</li>
<li>
<section class="detail" id="loadConf(org.apache.hadoop.conf.Configuration)">
<h3>loadConf</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-248">loadConf</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-259">loadConf</a></span><wbr><span class="parameters">(org.apache.hadoop.conf.Configuration conf)</span></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="BaseLoadBalancer.html#loadConf(org.apache.hadoop.conf.Configuration)">loadConf</a></code> in class <code><a href="BaseLoadBalancer.html" title="class in org.apache.hadoop.hbase.master.balancer">BaseLoadBalancer</a></code></dd>
@@ -883,7 +880,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)">
<h3>updateClusterMetrics</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-278">updateClusterMetrics</a></span><wbr><span class="parameters">(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> st)</span></div>
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-289">updateClusterMetrics</a></span><wbr><span class="parameters">(<a href="../../ClusterMetrics.html" title="interface in org.apache.hadoop.hbase">ClusterMetrics</a> st)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="../LoadBalancer.html#updateClusterMetrics(org.apache.hadoop.hbase.ClusterMetrics)">LoadBalancer</a></code></span></div>
<div class="block">Set the current cluster status. This allows a LoadBalancer to map host name to a server</div>
<dl class="notes">
@@ -897,14 +894,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateBalancerTableLoadInfo(org.apache.hadoop.hbase.TableName,java.util.Map)">
<h3>updateBalancerTableLoadInfo</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-295">updateBalancerTableLoadInfo</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-306">updateBalancerTableLoadInfo</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache. [...]
</section>
</li>
<li>
<section class="detail" id="updateBalancerLoadInfo(java.util.Map)">
<h3>updateBalancerLoadInfo</h3>
-<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-310">updateBalancerLoadInfo</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href= [...]
+<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-321">updateBalancerLoadInfo</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href= [...]
<div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="../LoadBalancer.html#updateBalancerLoadInfo(java.util.Map)">LoadBalancer</a></code></span></div>
<div class="block">In some scenarios, Balancer needs to update internal status or information according to the
current tables load</div>
@@ -917,61 +914,67 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateMetricsSize(int)">
<h3>updateMetricsSize</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-326">updateMetricsSize</a></span><wbr><span class="parameters">(int size)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-337">updateMetricsSize</a></span><wbr><span class="parameters">(int size)</span></div>
<div class="block">Update the number of metrics that are reported to JMX</div>
</section>
</li>
<li>
<section class="detail" id="areSomeRegionReplicasColocated(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>areSomeRegionReplicasColocated</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-334">areSomeRegionReplicasColocated</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> c)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-345">areSomeRegionReplicasColocated</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> c)</span></div>
</section>
</li>
<li>
<section class="detail" id="getBalanceReason(double,double)">
<h3>getBalanceReason</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-340">getBalanceReason</a></span><wbr><span class="parameters">(double total,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-351">getBalanceReason</a></span><wbr><span class="parameters">(double total,
double sumMultiplier)</span></div>
</section>
</li>
<li>
<section class="detail" id="needsBalance(org.apache.hadoop.hbase.TableName,org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>needsBalance</h3>
-<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-353">needsBalance</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
+<div class="member-signature"><span class="return-type">boolean</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-364">needsBalance</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
</section>
</li>
<li>
<section class="detail" id="nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>nextAction</h3>
-<div class="member-signature"><span class="return-type"><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-410">nextAction</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> clus [...]
+<div class="member-signature"><span class="return-type"><a href="../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/Stoch [...]
</section>
</li>
<li>
<section class="detail" id="getRandomGenerator()">
<h3>getRandomGenerator</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-421">getRandomGenerator</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-433">getRandomGenerator</a></span>()</div>
<div class="block">Select the candidate generator to use based on the cost of cost functions. The chance of
- selecting a candidate generator is propotional to the share of cost of all cost functions among
- all cost functions that benefit from it.</div>
+ selecting a candidate generator is proportional to the share of cost of all cost functions
+ among all cost functions that benefit from it.</div>
+</section>
+</li>
+<li>
+<section class="detail" id="pickAnyGenerator(java.util.List)">
+<h3>pickAnyGenerator</h3>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-466">pickAnyGenerator</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.ba [...]
</section>
</li>
<li>
<section class="detail" id="setRackManager(org.apache.hadoop.hbase.master.RackManager)">
<h3>setRackManager</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-442">setRackManager</a></span><wbr><span class="parameters">(<a href="../RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a> rackManager)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-473">setRackManager</a></span><wbr><span class="parameters">(<a href="../RackManager.html" title="class in org.apache.hadoop.hbase.master">RackManager</a> rackManager)</span></div>
</section>
</li>
<li>
<section class="detail" id="calculateMaxSteps(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>calculateMaxSteps</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-448">calculateMaxSteps</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">long</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-479">calculateMaxSteps</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
</section>
</li>
<li>
<section class="detail" id="balanceTable(org.apache.hadoop.hbase.TableName,java.util.Map)">
<h3>balanceTable</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoad [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoad [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../client/RegionInfo.html" title="interface in org.apache. [...]
<div class="block">Given the cluster state this will try and approach an optimal balance. This should always
approach the optimal state given enough steps.</div>
@@ -989,14 +992,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="sendRejectionReasonToRingBuffer(java.util.function.Supplier,java.util.List)">
<h3>sendRejectionReasonToRingBuffer</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-580">sendRejectionReasonToRingBuffer</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class= [...]
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-625">sendRejectionReasonToRingBuffer</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class= [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>> costFunctions)</span></div>
</section>
</li>
<li>
<section class="detail" id="sendRegionPlansToRingBuffer(java.util.List,double,double,java.lang.String,long)">
<h3>sendRegionPlansToRingBuffer</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-596">sendRegionPlansToRingBuffer</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>< [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-641">sendRegionPlansToRingBuffer</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>< [...]
double currentCost,
double initCost,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> initFunctionTotalCosts,
@@ -1006,7 +1009,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateStochasticCosts(org.apache.hadoop.hbase.TableName,double,double[])">
<h3>updateStochasticCosts</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-615">updateStochasticCosts</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-660">updateStochasticCosts</a></span><wbr><span class="parameters">(<a href="../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
double overall,
double[] subCosts)</span></div>
<div class="block">update costs to JMX</div>
@@ -1015,32 +1018,32 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="addCostFunction(java.util.List,org.apache.hadoop.hbase.master.balancer.CostFunction)">
<h3>addCostFunction</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-639">addCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="Cos [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-684">addCostFunction</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="Cos [...]
<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a> costFunction)</span></div>
</section>
</li>
<li>
<section class="detail" id="functionCost()">
<h3>functionCost</h3>
-<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-646">functionCost</a></span>()</div>
+<div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-691">functionCost</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="getCostFunctions()">
<h3>getCostFunctions</h3>
-<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-667">getCostFunct [...]
+<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-712">getCostFunct [...]
</section>
</li>
<li>
<section class="detail" id="totalCostsPerFunc()">
<h3>totalCostsPerFunc</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-673">totalCostsPerFunc</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-718">totalCostsPerFunc</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="createRegionPlans(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>createRegionPlans</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBa [...]
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../RegionPlan.html" title="class in org.apache.hadoop.hbase.master">RegionPlan</a>></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBa [...]
<div class="block">Create all of the RegionPlan's needed to move from the initial cluster state to the desired
state.</div>
<dl class="notes">
@@ -1054,20 +1057,20 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="updateRegionLoad()">
<h3>updateRegionLoad</h3>
-<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-726">updateRegionLoad</a></span>()</div>
+<div class="member-signature"><span class="modifiers">private</span> <span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-771">updateRegionLoad</a></span>()</div>
<div class="block">Store the current region loads.</div>
</section>
</li>
<li>
<section class="detail" id="initCosts(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">
<h3>initCosts</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-747">initCosts</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-792">initCosts</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</span></div>
</section>
</li>
<li>
<section class="detail" id="updateCostsAndWeightsWithAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,org.apache.hadoop.hbase.master.balancer.BalanceAction)">
<h3>updateCostsAndWeightsWithAction</h3>
-<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-761">updateCostsAndWeightsWithAction</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="return-type">void</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-808">updateCostsAndWeightsWithAction</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
<a href="BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a> action)</span></div>
<div class="block">Update both the costs of costfunctions and the weights of candidate generators</div>
</section>
@@ -1075,14 +1078,14 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="getCostFunctionNames()">
<h3>getCostFunctionNames</h3>
-<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-779">getCostFunctionNames</a></span>()</div>
+<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-826">getCostFunctionNames</a></span>()</div>
<div class="block">Get the names of the cost functions</div>
</section>
</li>
<li>
<section class="detail" id="computeCost(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,double)">
<h3>computeCost</h3>
-<div class="member-signature"><span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-799">computeCost</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="member-signature"><span class="return-type">double</span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-846">computeCost</a></span><wbr><span class="parameters">(<a href="BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
double previousCost)</span></div>
<div class="block">This is the main cost function. It will compute a cost associated with a proposed cluster
state. All different costs will be combined with their multipliers to produce a double cost.</div>
@@ -1099,7 +1102,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="composeAttributeName(java.lang.String,java.lang.String)">
<h3>composeAttributeName</h3>
-<div class="member-signature"><span class="modifiers">static</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-829">composeAttributeName</a></span><wbr><span class="parameters">(<a href="htt [...]
+<div class="member-signature"><span class="modifiers">static</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name"><a href="../../../../../../src-html/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.html#line-876">composeAttributeName</a></span><wbr><span class="parameters">(<a href="htt [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> costFunctionName)</span></div>
<div class="block">A helper function to compose the attribute name from tablename and costfunction name</div>
</section>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html
index c5a5daa8a5b..5cb0c873de7 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/StoreFileCostFunction.html
@@ -145,7 +145,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#getRegionLoadCost(java.util.Collection)">getRegionLoadCost</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html
index fae35f52f9f..d2a524a55bb 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/TableSkewCostFunction.html
@@ -154,7 +154,7 @@ loadScripts(document, 'script');</script>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html
index 173de9323df..f249331780e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/WriteRequestCostFunction.html
@@ -150,7 +150,7 @@ loadScripts(document, 'script');</script>
<code><a href="CostFromRegionLoadFunction.html#cost()">cost</a>, <a href="CostFromRegionLoadFunction.html#prepare(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)">prepare</a>, <a href="CostFromRegionLoadFunction.html#regionMoved(int,int,int)">regionMoved</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.hadoop.hbase.master.balancer.CostFunction">Methods inherited from class org.apache.hadoop.hbase.master.balancer.<a href="CostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">CostFunction</a></h3>
-<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(double%5B%5D)" [...]
+<code><a href="CostFunction.html#getCostEpsilon(double)">getCostEpsilon</a>, <a href="CostFunction.html#getMultiplier()">getMultiplier</a>, <a href="CostFunction.html#isNeeded()">isNeeded</a>, <a href="CostFunction.html#postAction(org.apache.hadoop.hbase.master.balancer.BalanceAction)">postAction</a>, <a href="CostFunction.html#scale(double,double,double)">scale</a>, <a href="CostFunction.html#setMultiplier(float)">setMultiplier</a>, <a href="CostFunction.html#updateWeight(java.util.Map) [...]
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or [...]
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 1f44be8068c..09f3fe40091 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
@@ -134,44 +134,44 @@ loadScripts(document, 'script');</script>
int toRegion)</code></div>
<div class="col-last even-row-color"> </div>
<div class="col-first odd-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.</span><code><a href="../CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#pickRandomRegions(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int)" class="member-name-link">pickRandomRegions</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+ int thisServer,
+ int otherServer)</code></div>
<div class="col-last odd-row-color"> </div>
<div class="col-first even-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.</span><code><a href="../CacheAwareLoadBalancer.CacheAwareSkewnessCandidateGenerator.html#pickRandomRegions(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int)" class="member-name-link">pickRandomRegions</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="col-second even-row-color"><span class="type-name-label">CandidateGenerator.</span><code><a href="../CandidateGenerator.html#pickRandomRegions(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int)" class="member-name-link">pickRandomRegions</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int thisServer,
int otherServer)</code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">CandidateGenerator.</span><code><a href="../CandidateGenerator.html#pickRandomRegions(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int)" class="member-name-link">pickRandomRegions</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
- int thisServer,
- int otherServer)</code></div>
+<div class="col-first odd-row-color"><code><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">AssignRegionAction.</span><code><a href="../AssignRegionAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">AssignRegionAction.</span><code><a href="../AssignRegionAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
-<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">BalanceAction.</span><code><a href="../BalanceAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
-<div class="col-last odd-row-color">
+<div class="col-first even-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">BalanceAction.</span><code><a href="../BalanceAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
+<div class="col-last even-row-color">
<div class="block">Returns an Action which would undo this action</div>
</div>
-<div class="col-first even-row-color"><code><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">MoveRegionAction.</span><code><a href="../MoveRegionAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
-<div class="col-last even-row-color"> </div>
<div class="col-first odd-row-color"><code><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">SwapRegionsAction.</span><code><a href="../SwapRegionsAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">MoveRegionAction.</span><code><a href="../MoveRegionAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">SwapRegionsAction.</span><code><a href="../SwapRegionsAction.html#undoAction()" class="member-name-link">undoAction</a>()</code></div>
+<div class="col-last even-row-color"> </div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> that return types with arguments of type <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Optional.html" title="class or interface in java.util" class="external-link">Optional</a><<a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">LocalityBasedCandidateGenerator.</span><code><a href="../LocalityBasedCandidateGenerator.html#tryMoveOrSwap(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int,int)" class="member-name-link">tryMoveOrSwap</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
+<div class="col-first even-row-color"><code>(package private) <a href="../../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Optional.html" title="class or interface in java.util" class="external-link">Optional</a><<a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">LocalityBasedCandidateGenerator.</span><code><a href="../LocalityBasedCandidateGenerator.html#tryMoveOrSwap(org.apache.hadoop.hbase.master.balancer.BalancerClusterState,int,int,int)" class="member-name-link">tryMoveOrSwap</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster,
int fromServer,
int fromRegion,
int toServer)</code></div>
-<div class="col-last even-row-color"> </div>
+<div class="col-last odd-row-color"> </div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> with parameters of type <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></span></div>
<div class="summary-table three-column-summary">
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 af4e1ab9279..896b346b72f 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
@@ -178,7 +178,7 @@ loadScripts(document, 'script');</script>
<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#needsBalance(org.apache.hadoop.hbase.TableName,org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">needsBalance</a><wbr>(<a href="../../../TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> tableName,
<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>(package private) <a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a></code></div>
+<div class="col-first odd-row-color"><code>(package private) <a href="../../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
<div class="col-last odd-row-color"> </div>
<div class="col-first even-row-color"><code>private int</code></div>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/CandidateGenerator.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/CandidateGenerator.html
index 37a03d1cbd2..16cf8995714 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/CandidateGenerator.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/CandidateGenerator.html
@@ -109,9 +109,18 @@ loadScripts(document, 'script');</script>
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Cand [...]
<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#candidateGenerators" class="member-name-link">candidateGenerators</a></code></div>
<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candi [...]
+<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#candidateGenerators" class="member-name-link">candidateGenerators</a></code></div>
+<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/l [...]
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#shuffledGeneratorClasses" class="member-name-link">shuffledGeneratorClasses</a></code></div>
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>private final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">C [...]
+<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#weightsOfGenerators" class="member-name-link">weightsOfGenerators</a></code></div>
+<div class="col-last odd-row-color"> </div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> that return <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
<div class="summary-table three-column-summary">
@@ -128,24 +137,72 @@ loadScripts(document, 'script');</script>
<div class="col-last odd-row-color">
<div class="block">Select the candidate generator to use based on the cost of cost functions.</div>
</div>
+<div class="col-first even-row-color"><code>private <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#pickAnyGenerator(java.util.List)" class="member-name-link">pickAnyGenerator</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title [...]
+<div class="col-last even-row-color"> </div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> that return types with arguments of type <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Cand [...]
<div class="col-second even-row-color"><span class="type-name-label">CacheAwareLoadBalancer.</span><code><a href="../CacheAwareLoadBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first odd-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candi [...]
+<div class="col-second odd-row-color"><span class="type-name-label">CacheAwareLoadBalancer.</span><code><a href="../CacheAwareLoadBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
+<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Cand [...]
+<div class="col-second even-row-color"><span class="type-name-label">FavoredStochasticBalancer.</span><code><a href="../FavoredStochasticBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candi [...]
<div class="col-second odd-row-color"><span class="type-name-label">FavoredStochasticBalancer.</span><code><a href="../FavoredStochasticBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last odd-row-color"> </div>
-<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Cand [...]
<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
<div class="col-last even-row-color"> </div>
-<div class="col-first odd-row-color"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>></code></div>
+<div class="col-first odd-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">Candi [...]
+<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#createCandidateGenerators()" class="member-name-link">createCandidateGenerators</a>()</code></div>
+<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balanc [...]
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#getCandidateGenerators()" class="member-name-link">getCandidateGenerators</a>()</code></div>
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>(package private) <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><? extends <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balance [...]
<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#getCandidateGenerators()" class="member-name-link">getCandidateGenerators</a>()</code></div>
<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>(package private) <a href="../../../util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="../BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="../BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
+<div class="col-last even-row-color"> </div>
+</div>
+<div class="caption"><span>Method parameters in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> with type arguments of type <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></span></div>
+<div class="summary-table three-column-summary">
+<div class="table-header col-first">Modifier and Type</div>
+<div class="table-header col-second">Method</div>
+<div class="table-header col-last">Description</div>
+<div class="col-first even-row-color"><code>private <a href="../CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../StochasticLoadBalancer.html#pickAnyGenerator(java.util.List)" class="member-name-link">pickAnyGenerator</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title [...]
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>void</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">CacheAwareLoadBalancer.CacheAwareCostFunction.</span><code><a href="../CacheAwareLoadBalancer.CacheAwareCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/jav [...]
+<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>final void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.</span><code><a href="../CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/e [...]
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>void</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">CostFunction.</span><code><a href="../CostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lan [...]
+<div class="col-last odd-row-color">
+<div class="block">Add the cost of this cost function to the weight of the candidate generator that is optimized
+ for this cost function.</div>
+</div>
+<div class="col-first even-row-color"><code>final void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">LocalityBasedCostFunction.</span><code><a href="../LocalityBasedCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="cla [...]
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>final void</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">RegionCountSkewCostFunction.</span><code><a href="../RegionCountSkewCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title=" [...]
+<div class="col-last odd-row-color"> </div>
+<div class="col-first even-row-color"><code>final void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">RegionReplicaGroupingCostFunction.</span><code><a href="../RegionReplicaGroupingCostFunction.html#updateWeight(java.util.Map)" class="member-name-link">updateWeight</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class. [...]
+<div class="col-last even-row-color"> </div>
</div>
</section>
</li>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/StochasticLoadBalancer.GeneratorType.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/StochasticLoadBalancer.GeneratorType.html
deleted file mode 100644
index 8dfeff8e006..00000000000
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/class-use/StochasticLoadBalancer.GeneratorType.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<!DOCTYPE HTML>
-<html lang="en">
-<head>
-<!-- Generated by javadoc (17) -->
-<title>Uses of Enum Class org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.GeneratorType (Apache HBase 4.0.0-alpha-1-SNAPSHOT API)</title>
-<meta name="viewport" content="width=device-width, initial-scale=1">
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="description" content="use: package: org.apache.hadoop.hbase.master.balancer, class: StochasticLoadBalancer, enum: GeneratorType">
-<meta name="generator" content="javadoc/ClassUseWriter">
-<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../../../../jquery-ui.overrides.css" title="Style">
-<script type="text/javascript" src="../../../../../../../script.js"></script>
-<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.6.1.min.js"></script>
-<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
-</head>
-<body class="class-use-page">
-<script type="text/javascript">var pathtoroot = "../../../../../../../";
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<div class="flex-box">
-<header role="banner" class="flex-header">
-<nav role="navigation">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="top-nav" id="navbar-top">
-<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
-<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
-<li><a href="../../../../../../../index.html">Overview</a></li>
-<li><a href="../package-summary.html">Package</a></li>
-<li><a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">Class</a></li>
-<li class="nav-bar-cell1-rev">Use</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#use">Help</a></li>
-</ul>
-</div>
-<div class="sub-nav">
-<div class="nav-list-search"><label for="search-input">SEARCH:</label>
-<input type="text" id="search-input" value="search" disabled="disabled">
-<input type="reset" id="reset-button" value="reset" disabled="disabled">
-</div>
-</div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<span class="skip-nav" id="skip-navbar-top"></span></nav>
-</header>
-<div class="flex-content">
-<main role="main">
-<div class="header">
-<h1 title="Uses of Enum Class org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.GeneratorType" class="title">Uses of Enum Class<br>org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.GeneratorType</h1>
-</div>
-<div class="caption"><span>Packages that use <a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span></div>
-<div class="summary-table two-column-summary">
-<div class="table-header col-first">Package</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><a href="#org.apache.hadoop.hbase.master.balancer">org.apache.hadoop.hbase.master.balancer</a></div>
-<div class="col-last even-row-color"> </div>
-</div>
-<section class="class-uses">
-<ul class="block-list">
-<li>
-<section class="detail" id="org.apache.hadoop.hbase.master.balancer">
-<h2>Uses of <a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a> in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a></h2>
-<div class="caption"><span>Methods in <a href="../package-summary.html">org.apache.hadoop.hbase.master.balancer</a> that return <a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></span></div>
-<div class="summary-table three-column-summary">
-<div class="table-header col-first">Modifier and Type</div>
-<div class="table-header col-second">Method</div>
-<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>static <a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.GeneratorType.</span><code><a href="../StochasticLoadBalancer.GeneratorType.html#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> name)</code></div>
-<div class="col-last even-row-color">
-<div class="block">Returns the enum constant of this class with the specified name.</div>
-</div>
-<div class="col-first odd-row-color"><code>static <a href="../StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a>[]</code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">StochasticLoadBalancer.GeneratorType.</span><code><a href="../StochasticLoadBalancer.GeneratorType.html#values()" class="member-name-link">values</a>()</code></div>
-<div class="col-last odd-row-color">
-<div class="block">Returns an array containing the constants of this enum class, in
-the order they are declared.</div>
-</div>
-</div>
-</section>
-</li>
-</ul>
-</section>
-</main>
-<footer role="contentinfo">
-<hr>
-<p class="legal-copy"><small>Copyright © 2007–2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
-</footer>
-</div>
-</div>
-</body>
-</html>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-summary.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-summary.html
index af8cfc19dfd..df62ee77d75 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-summary.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-summary.html
@@ -302,21 +302,19 @@ loadScripts(document, 'script');</script>
<div class="block">
This is a best effort load balancer.</div>
</div>
-<div class="col-first even-row-color class-summary class-summary-tab3"><a href="StochasticLoadBalancer.GeneratorType.html" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></div>
-<div class="col-last even-row-color class-summary class-summary-tab3"> </div>
-<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="StoreFileCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StoreFileCostFunction</a></div>
-<div class="col-last odd-row-color class-summary class-summary-tab2">
+<div class="col-first even-row-color class-summary class-summary-tab2"><a href="StoreFileCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">StoreFileCostFunction</a></div>
+<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">Compute the cost of total open storefiles size.</div>
</div>
-<div class="col-first even-row-color class-summary class-summary-tab2"><a href="SwapRegionsAction.html" title="class in org.apache.hadoop.hbase.master.balancer">SwapRegionsAction</a></div>
-<div class="col-last even-row-color class-summary class-summary-tab2"> </div>
-<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="TableSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">TableSkewCostFunction</a></div>
-<div class="col-last odd-row-color class-summary class-summary-tab2">
+<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="SwapRegionsAction.html" title="class in org.apache.hadoop.hbase.master.balancer">SwapRegionsAction</a></div>
+<div class="col-last odd-row-color class-summary class-summary-tab2"> </div>
+<div class="col-first even-row-color class-summary class-summary-tab2"><a href="TableSkewCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">TableSkewCostFunction</a></div>
+<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">Compute the cost of a potential cluster configuration based upon how evenly distributed tables
are.</div>
</div>
-<div class="col-first even-row-color class-summary class-summary-tab2"><a href="WriteRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">WriteRequestCostFunction</a></div>
-<div class="col-last even-row-color class-summary class-summary-tab2">
+<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="WriteRequestCostFunction.html" title="class in org.apache.hadoop.hbase.master.balancer">WriteRequestCostFunction</a></div>
+<div class="col-last odd-row-color class-summary class-summary-tab2">
<div class="block">Compute the cost of total number of write requests.</div>
</div>
</div>
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 257e889962f..7f719d8347b 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-tree.html
@@ -220,7 +220,6 @@ loadScripts(document, 'script');</script>
<li class="circle">org.apache.hadoop.hbase.master.balancer.<a href="BalanceAction.Type.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">BalanceAction.Type</a></li>
<li class="circle">org.apache.hadoop.hbase.master.balancer.<a href="BalancerClusterState.LocalityType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState.LocalityType</a></li>
<li class="circle">org.apache.hadoop.hbase.master.balancer.<a href="CacheAwareLoadBalancer.GeneratorFunctionType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">CacheAwareLoadBalancer.GeneratorFunctionType</a></li>
-<li class="circle">org.apache.hadoop.hbase.master.balancer.<a href="StochasticLoadBalancer.GeneratorType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></li>
</ul>
</li>
</ul>
diff --git a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-use.html b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-use.html
index 8ada4ed3446..461ac32dde3 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/package-use.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/package-use.html
@@ -242,8 +242,6 @@ loadScripts(document, 'script');</script>
<div class="block">
This is a best effort load balancer.</div>
</div>
-<div class="col-first even-row-color"><a href="class-use/StochasticLoadBalancer.GeneratorType.html#org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></div>
-<div class="col-last even-row-color"> </div>
</div>
</section>
</li>
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 a5c990dad23..7879260cd77 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/class-use/Pair.html
@@ -910,10 +910,13 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
-<div class="col-first even-row-color"><code>private <a href="../Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class [...]
-<div class="col-second even-row-color"><span class="type-name-label">FavoredStochasticBalancer.</span><code><a href="../../master/balancer/FavoredStochasticBalancer.html#segregateRegionsAndAssignRegionsWithFavoredNodes(java.util.Collection,java.util.List)" class="member-name-link">segregateRegionsAndAssignRegionsWithFavoredNodes</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external [...]
+<div class="col-first even-row-color"><code>(package private) <a href="../Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="../../master/balancer/CandidateGenerator.html" title="class in org.apache.hadoop.hbase.master.balancer">CandidateGenerator</a>,<wbr><a href="../../master/balancer/BalanceAction.html" title="class in org.apache.hadoop.hbase.master.balancer">BalanceAction</a>></code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StochasticLoadBalancer.</span><code><a href="../../master/balancer/StochasticLoadBalancer.html#nextAction(org.apache.hadoop.hbase.master.balancer.BalancerClusterState)" class="member-name-link">nextAction</a><wbr>(<a href="../../master/balancer/BalancerClusterState.html" title="class in org.apache.hadoop.hbase.master.balancer">BalancerClusterState</a> cluster)</code></div>
+<div class="col-last even-row-color"> </div>
+<div class="col-first odd-row-color"><code>private <a href="../Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class [...]
+<div class="col-second odd-row-color"><span class="type-name-label">FavoredStochasticBalancer.</span><code><a href="../../master/balancer/FavoredStochasticBalancer.html#segregateRegionsAndAssignRegionsWithFavoredNodes(java.util.Collection,java.util.List)" class="member-name-link">segregateRegionsAndAssignRegionsWithFavoredNodes</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external- [...]
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>> onlineServers)</code></div>
-<div class="col-last even-row-color">
+<div class="col-last odd-row-color">
<div class="block">Return a pair - one with assignments when favored nodes are present and another with regions
without favored nodes.</div>
</div>
diff --git a/devapidocs/overview-tree.html b/devapidocs/overview-tree.html
index 634c187cb72..c803f8ca3bf 100644
--- a/devapidocs/overview-tree.html
+++ b/devapidocs/overview-tree.html
@@ -6049,7 +6049,6 @@ loadScripts(document, 'script');</script>
<li class="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.regionserver">SplitLogWorker.TaskExecutor.Status</a></li>
<li class="circle">org.apache.hadoop.hbase.io.crypto.tls.<a href="org/apache/hadoop/hbase/io/crypto/tls/StandardTypeFileKeyStoreLoader.SupportedStandardKeyFormat.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.io.crypto.tls">StandardTypeFileKeyStoreLoader.SupportedStandardKeyFormat</a></li>
<li class="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.procedure2">StateMachineProcedure.Flow</a></li>
-<li class="circle">org.apache.hadoop.hbase.master.balancer.<a href="org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.GeneratorType.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.master.balancer">StochasticLoadBalancer.GeneratorType</a></li>
<li class="circle">org.apache.hadoop.hbase.regionserver.storefiletracker.<a href="org/apache/hadoop/hbase/regionserver/storefiletracker/StoreFileTrackerFactory.Trackers.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.regionserver.storefiletracker">StoreFileTrackerFactory.Trackers</a></li>
<li class="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.regionserver.querymatcher">StripeCompactionScanQueryMatcher.DropDeletesInOutput</a></li>
<li class="circle">org.apache.hadoop.hbase.replication.<a href="org/apache/hadoop/hbase/replication/SyncReplicationState.html" class="type-name-link" title="enum class in org.apache.hadoop.hbase.replication">SyncReplicationState</a></li>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
index 5c5f70ef9ce..55c4893754c 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCandidateGenerator.html
@@ -81,421 +81,423 @@
<span class="source-line-no">068</span><span id="line-68"> }</span>
<span class="source-line-no">069</span><span id="line-69"></span>
<span class="source-line-no">070</span><span id="line-70"> @Override</span>
-<span class="source-line-no">071</span><span id="line-71"> protected List<CandidateGenerator> createCandidateGenerators() {</span>
-<span class="source-line-no">072</span><span id="line-72"> List<CandidateGenerator> candidateGenerators = new ArrayList<>(2);</span>
-<span class="source-line-no">073</span><span id="line-73"> candidateGenerators.add(GeneratorFunctionType.LOAD.ordinal(),</span>
-<span class="source-line-no">074</span><span id="line-74"> new CacheAwareSkewnessCandidateGenerator());</span>
-<span class="source-line-no">075</span><span id="line-75"> candidateGenerators.add(GeneratorFunctionType.CACHE_RATIO.ordinal(),</span>
-<span class="source-line-no">076</span><span id="line-76"> new CacheAwareCandidateGenerator());</span>
-<span class="source-line-no">077</span><span id="line-77"> return candidateGenerators;</span>
-<span class="source-line-no">078</span><span id="line-78"> }</span>
-<span class="source-line-no">079</span><span id="line-79"></span>
-<span class="source-line-no">080</span><span id="line-80"> @Override</span>
-<span class="source-line-no">081</span><span id="line-81"> protected List<CostFunction> createCostFunctions(Configuration configuration) {</span>
-<span class="source-line-no">082</span><span id="line-82"> List<CostFunction> costFunctions = new ArrayList<>();</span>
-<span class="source-line-no">083</span><span id="line-83"> addCostFunction(costFunctions, new CacheAwareRegionSkewnessCostFunction(configuration));</span>
-<span class="source-line-no">084</span><span id="line-84"> addCostFunction(costFunctions, new CacheAwareCostFunction(configuration));</span>
-<span class="source-line-no">085</span><span id="line-85"> return costFunctions;</span>
-<span class="source-line-no">086</span><span id="line-86"> }</span>
-<span class="source-line-no">087</span><span id="line-87"></span>
-<span class="source-line-no">088</span><span id="line-88"> private void addCostFunction(List<CostFunction> costFunctions, CostFunction costFunction) {</span>
-<span class="source-line-no">089</span><span id="line-89"> if (costFunction.getMultiplier() > 0) {</span>
-<span class="source-line-no">090</span><span id="line-90"> costFunctions.add(costFunction);</span>
-<span class="source-line-no">091</span><span id="line-91"> }</span>
-<span class="source-line-no">092</span><span id="line-92"> }</span>
-<span class="source-line-no">093</span><span id="line-93"></span>
-<span class="source-line-no">094</span><span id="line-94"> @Override</span>
-<span class="source-line-no">095</span><span id="line-95"> public void updateClusterMetrics(ClusterMetrics clusterMetrics) {</span>
-<span class="source-line-no">096</span><span id="line-96"> this.clusterStatus = clusterMetrics;</span>
-<span class="source-line-no">097</span><span id="line-97"> updateRegionLoad();</span>
-<span class="source-line-no">098</span><span id="line-98"> }</span>
-<span class="source-line-no">099</span><span id="line-99"></span>
-<span class="source-line-no">100</span><span id="line-100"> /**</span>
-<span class="source-line-no">101</span><span id="line-101"> * Collect the amount of region cached for all the regions from all the active region servers.</span>
-<span class="source-line-no">102</span><span id="line-102"> */</span>
-<span class="source-line-no">103</span><span id="line-103"> private void updateRegionLoad() {</span>
-<span class="source-line-no">104</span><span id="line-104"> loads = new HashMap<>();</span>
-<span class="source-line-no">105</span><span id="line-105"> regionCacheRatioOnOldServerMap = new HashMap<>();</span>
-<span class="source-line-no">106</span><span id="line-106"> Map<String, Pair<ServerName, Integer>> regionCacheRatioOnCurrentServerMap = new HashMap<>();</span>
-<span class="source-line-no">107</span><span id="line-107"></span>
-<span class="source-line-no">108</span><span id="line-108"> // Build current region cache statistics</span>
-<span class="source-line-no">109</span><span id="line-109"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">110</span><span id="line-110"> // Create a map of region and the server where it is currently hosted</span>
-<span class="source-line-no">111</span><span id="line-111"> sm.getRegionMetrics().forEach((byte[] regionName, RegionMetrics rm) -> {</span>
-<span class="source-line-no">112</span><span id="line-112"> String regionEncodedName = RegionInfo.encodeRegionName(regionName);</span>
-<span class="source-line-no">113</span><span id="line-113"></span>
-<span class="source-line-no">114</span><span id="line-114"> Deque<BalancerRegionLoad> rload = new ArrayDeque<>();</span>
-<span class="source-line-no">115</span><span id="line-115"></span>
-<span class="source-line-no">116</span><span id="line-116"> // Get the total size of the hFiles in this region</span>
-<span class="source-line-no">117</span><span id="line-117"> int regionSizeMB = (int) rm.getRegionSizeMB().get(Size.Unit.MEGABYTE);</span>
-<span class="source-line-no">118</span><span id="line-118"></span>
-<span class="source-line-no">119</span><span id="line-119"> rload.add(new BalancerRegionLoad(rm));</span>
-<span class="source-line-no">120</span><span id="line-120"> // Maintain a map of region and it's total size. This is needed to calculate the cache</span>
-<span class="source-line-no">121</span><span id="line-121"> // ratios for the regions cached on old region servers</span>
-<span class="source-line-no">122</span><span id="line-122"> regionCacheRatioOnCurrentServerMap.put(regionEncodedName, new Pair<>(sn, regionSizeMB));</span>
-<span class="source-line-no">123</span><span id="line-123"> loads.put(regionEncodedName, rload);</span>
-<span class="source-line-no">124</span><span id="line-124"> });</span>
-<span class="source-line-no">125</span><span id="line-125"> });</span>
-<span class="source-line-no">126</span><span id="line-126"></span>
-<span class="source-line-no">127</span><span id="line-127"> // Build cache statistics for the regions hosted previously on old region servers</span>
-<span class="source-line-no">128</span><span id="line-128"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">129</span><span id="line-129"> // Find if a region was previously hosted on a server other than the one it is currently</span>
-<span class="source-line-no">130</span><span id="line-130"> // hosted on.</span>
-<span class="source-line-no">131</span><span id="line-131"> sm.getRegionCachedInfo().forEach((String regionEncodedName, Integer regionSizeInCache) -> {</span>
-<span class="source-line-no">132</span><span id="line-132"> // If the region is found in regionCacheRatioOnCurrentServerMap, it is currently hosted on</span>
-<span class="source-line-no">133</span><span id="line-133"> // this server</span>
-<span class="source-line-no">134</span><span id="line-134"> if (regionCacheRatioOnCurrentServerMap.containsKey(regionEncodedName)) {</span>
-<span class="source-line-no">135</span><span id="line-135"> ServerName currentServer =</span>
-<span class="source-line-no">136</span><span id="line-136"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getFirst();</span>
-<span class="source-line-no">137</span><span id="line-137"> if (!ServerName.isSameAddress(currentServer, sn)) {</span>
-<span class="source-line-no">138</span><span id="line-138"> int regionSizeMB =</span>
-<span class="source-line-no">139</span><span id="line-139"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getSecond();</span>
-<span class="source-line-no">140</span><span id="line-140"> float regionCacheRatioOnOldServer =</span>
-<span class="source-line-no">141</span><span id="line-141"> regionSizeMB == 0 ? 0.0f : (float) regionSizeInCache / regionSizeMB;</span>
-<span class="source-line-no">142</span><span id="line-142"> regionCacheRatioOnOldServerMap.put(regionEncodedName,</span>
-<span class="source-line-no">143</span><span id="line-143"> new Pair<>(sn, regionCacheRatioOnOldServer));</span>
-<span class="source-line-no">144</span><span id="line-144"> }</span>
-<span class="source-line-no">145</span><span id="line-145"> }</span>
-<span class="source-line-no">146</span><span id="line-146"> });</span>
-<span class="source-line-no">147</span><span id="line-147"> });</span>
-<span class="source-line-no">148</span><span id="line-148"> }</span>
-<span class="source-line-no">149</span><span id="line-149"></span>
-<span class="source-line-no">150</span><span id="line-150"> private RegionInfo getRegionInfoByEncodedName(BalancerClusterState cluster, String regionName) {</span>
-<span class="source-line-no">151</span><span id="line-151"> Optional<RegionInfo> regionInfoOptional =</span>
-<span class="source-line-no">152</span><span id="line-152"> Arrays.stream(cluster.regions).filter((RegionInfo ri) -> {</span>
-<span class="source-line-no">153</span><span id="line-153"> return regionName.equals(ri.getEncodedName());</span>
-<span class="source-line-no">154</span><span id="line-154"> }).findFirst();</span>
-<span class="source-line-no">155</span><span id="line-155"></span>
-<span class="source-line-no">156</span><span id="line-156"> if (regionInfoOptional.isPresent()) {</span>
-<span class="source-line-no">157</span><span id="line-157"> return regionInfoOptional.get();</span>
-<span class="source-line-no">158</span><span id="line-158"> }</span>
-<span class="source-line-no">159</span><span id="line-159"> return null;</span>
-<span class="source-line-no">160</span><span id="line-160"> }</span>
-<span class="source-line-no">161</span><span id="line-161"></span>
-<span class="source-line-no">162</span><span id="line-162"> private class CacheAwareCandidateGenerator extends CandidateGenerator {</span>
-<span class="source-line-no">163</span><span id="line-163"> @Override</span>
-<span class="source-line-no">164</span><span id="line-164"> protected BalanceAction generate(BalancerClusterState cluster) {</span>
-<span class="source-line-no">165</span><span id="line-165"> // Move the regions to the servers they were previously hosted on based on the cache ratio</span>
-<span class="source-line-no">166</span><span id="line-166"> if (</span>
-<span class="source-line-no">167</span><span id="line-167"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">168</span><span id="line-168"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">169</span><span id="line-169"> ) {</span>
-<span class="source-line-no">170</span><span id="line-170"> Map.Entry<String, Pair<ServerName, Float>> regionCacheRatioServerMap =</span>
-<span class="source-line-no">171</span><span id="line-171"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">172</span><span id="line-172"> // Get the server where this region was previously hosted</span>
-<span class="source-line-no">173</span><span id="line-173"> String regionEncodedName = regionCacheRatioServerMap.getKey();</span>
-<span class="source-line-no">174</span><span id="line-174"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">175</span><span id="line-175"> if (regionInfo == null) {</span>
-<span class="source-line-no">176</span><span id="line-176"> LOG.warn("Region {} not found", regionEncodedName);</span>
-<span class="source-line-no">177</span><span id="line-177"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">178</span><span id="line-178"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">179</span><span id="line-179"> }</span>
-<span class="source-line-no">180</span><span id="line-180"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">181</span><span id="line-181"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">182</span><span id="line-182"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">183</span><span id="line-183"> }</span>
-<span class="source-line-no">184</span><span id="line-184"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
-<span class="source-line-no">185</span><span id="line-185"> int oldServerIndex = cluster.serversToIndex</span>
-<span class="source-line-no">186</span><span id="line-186"> .get(regionCacheRatioOnOldServerMap.get(regionEncodedName).getFirst().getAddress());</span>
-<span class="source-line-no">187</span><span id="line-187"> if (oldServerIndex < 0) {</span>
-<span class="source-line-no">188</span><span id="line-188"> LOG.warn("Server previously hosting region {} not found", regionEncodedName);</span>
-<span class="source-line-no">189</span><span id="line-189"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">190</span><span id="line-190"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">191</span><span id="line-191"> }</span>
-<span class="source-line-no">192</span><span id="line-192"></span>
-<span class="source-line-no">193</span><span id="line-193"> float oldRegionCacheRatio =</span>
-<span class="source-line-no">194</span><span id="line-194"> cluster.getOrComputeRegionCacheRatio(regionIndex, oldServerIndex);</span>
-<span class="source-line-no">195</span><span id="line-195"> int currentServerIndex = cluster.regionIndexToServerIndex[regionIndex];</span>
-<span class="source-line-no">196</span><span id="line-196"> float currentRegionCacheRatio =</span>
-<span class="source-line-no">197</span><span id="line-197"> cluster.getOrComputeRegionCacheRatio(regionIndex, currentServerIndex);</span>
-<span class="source-line-no">198</span><span id="line-198"></span>
-<span class="source-line-no">199</span><span id="line-199"> BalanceAction action = generatePlan(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">200</span><span id="line-200"> currentRegionCacheRatio, oldServerIndex, oldRegionCacheRatio);</span>
-<span class="source-line-no">201</span><span id="line-201"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">202</span><span id="line-202"> return action;</span>
-<span class="source-line-no">203</span><span id="line-203"> }</span>
-<span class="source-line-no">204</span><span id="line-204"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">205</span><span id="line-205"> }</span>
-<span class="source-line-no">206</span><span id="line-206"></span>
-<span class="source-line-no">207</span><span id="line-207"> private BalanceAction generatePlan(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">208</span><span id="line-208"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">209</span><span id="line-209"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">210</span><span id="line-210"> return moveRegionToOldServer(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">211</span><span id="line-211"> cacheRatioOnCurrentServer, oldServerIndex, cacheRatioOnOldServer)</span>
-<span class="source-line-no">212</span><span id="line-212"> ? getAction(currentServerIndex, regionIndex, oldServerIndex, -1)</span>
-<span class="source-line-no">213</span><span id="line-213"> : BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">214</span><span id="line-214"> }</span>
-<span class="source-line-no">215</span><span id="line-215"></span>
-<span class="source-line-no">216</span><span id="line-216"> private boolean moveRegionToOldServer(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">217</span><span id="line-217"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">218</span><span id="line-218"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">219</span><span id="line-219"> // Find if the region has already moved by comparing the current server index with the</span>
-<span class="source-line-no">220</span><span id="line-220"> // current server index. This can happen when other candidate generator has moved the region</span>
-<span class="source-line-no">221</span><span id="line-221"> if (currentServerIndex < 0 || oldServerIndex < 0) {</span>
-<span class="source-line-no">222</span><span id="line-222"> return false;</span>
-<span class="source-line-no">223</span><span id="line-223"> }</span>
-<span class="source-line-no">224</span><span id="line-224"></span>
-<span class="source-line-no">225</span><span id="line-225"> DecimalFormat df = new DecimalFormat("#");</span>
-<span class="source-line-no">226</span><span id="line-226"> df.setMaximumFractionDigits(4);</span>
-<span class="source-line-no">227</span><span id="line-227"></span>
-<span class="source-line-no">228</span><span id="line-228"> float cacheRatioDiffThreshold = 0.6f;</span>
-<span class="source-line-no">229</span><span id="line-229"></span>
-<span class="source-line-no">230</span><span id="line-230"> // Conditions for moving the region</span>
-<span class="source-line-no">231</span><span id="line-231"></span>
-<span class="source-line-no">232</span><span id="line-232"> // If the region is fully cached on the old server, move the region back</span>
-<span class="source-line-no">233</span><span id="line-233"> if (cacheRatioOnOldServer == 1.0f) {</span>
-<span class="source-line-no">234</span><span id="line-234"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">235</span><span id="line-235"> LOG.debug("Region {} moved to the old server {} as it is fully cached there",</span>
-<span class="source-line-no">236</span><span id="line-236"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[oldServerIndex]);</span>
-<span class="source-line-no">237</span><span id="line-237"> }</span>
-<span class="source-line-no">238</span><span id="line-238"> return true;</span>
-<span class="source-line-no">239</span><span id="line-239"> }</span>
-<span class="source-line-no">240</span><span id="line-240"></span>
-<span class="source-line-no">241</span><span id="line-241"> // Move the region back to the old server if it is cached equally on both the servers</span>
-<span class="source-line-no">242</span><span id="line-242"> if (cacheRatioOnCurrentServer == cacheRatioOnOldServer) {</span>
-<span class="source-line-no">243</span><span id="line-243"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">244</span><span id="line-244"> LOG.debug(</span>
-<span class="source-line-no">245</span><span id="line-245"> "Region {} moved from {} to {} as the region is cached {} equally on both servers",</span>
-<span class="source-line-no">246</span><span id="line-246"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">247</span><span id="line-247"> cluster.servers[oldServerIndex], df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">248</span><span id="line-248"> }</span>
-<span class="source-line-no">249</span><span id="line-249"> return true;</span>
-<span class="source-line-no">250</span><span id="line-250"> }</span>
-<span class="source-line-no">251</span><span id="line-251"></span>
-<span class="source-line-no">252</span><span id="line-252"> // If the region is not fully cached on either of the servers, move the region back to the</span>
-<span class="source-line-no">253</span><span id="line-253"> // old server if the region cache ratio on the current server is still much less than the old</span>
-<span class="source-line-no">254</span><span id="line-254"> // server</span>
-<span class="source-line-no">255</span><span id="line-255"> if (</span>
-<span class="source-line-no">256</span><span id="line-256"> cacheRatioOnOldServer > 0.0f</span>
-<span class="source-line-no">257</span><span id="line-257"> && cacheRatioOnCurrentServer / cacheRatioOnOldServer < cacheRatioDiffThreshold</span>
-<span class="source-line-no">258</span><span id="line-258"> ) {</span>
-<span class="source-line-no">259</span><span id="line-259"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">260</span><span id="line-260"> LOG.debug(</span>
-<span class="source-line-no">261</span><span id="line-261"> "Region {} moved from {} to {} as region cache ratio {} is better than the current "</span>
-<span class="source-line-no">262</span><span id="line-262"> + "cache ratio {}",</span>
-<span class="source-line-no">263</span><span id="line-263"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">264</span><span id="line-264"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">265</span><span id="line-265"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">266</span><span id="line-266"> }</span>
-<span class="source-line-no">267</span><span id="line-267"> return true;</span>
-<span class="source-line-no">268</span><span id="line-268"> }</span>
-<span class="source-line-no">269</span><span id="line-269"></span>
-<span class="source-line-no">270</span><span id="line-270"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">271</span><span id="line-271"> LOG.debug(</span>
-<span class="source-line-no">272</span><span id="line-272"> "Region {} not moved from {} to {} with current cache ratio {} and old cache ratio {}",</span>
-<span class="source-line-no">273</span><span id="line-273"> cluster.regions[regionIndex], cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">274</span><span id="line-274"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">275</span><span id="line-275"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">276</span><span id="line-276"> }</span>
-<span class="source-line-no">277</span><span id="line-277"> return false;</span>
-<span class="source-line-no">278</span><span id="line-278"> }</span>
-<span class="source-line-no">279</span><span id="line-279"> }</span>
-<span class="source-line-no">280</span><span id="line-280"></span>
-<span class="source-line-no">281</span><span id="line-281"> private class CacheAwareSkewnessCandidateGenerator extends LoadCandidateGenerator {</span>
-<span class="source-line-no">282</span><span id="line-282"> @Override</span>
-<span class="source-line-no">283</span><span id="line-283"> BalanceAction pickRandomRegions(BalancerClusterState cluster, int thisServer, int otherServer) {</span>
-<span class="source-line-no">284</span><span id="line-284"> // First move all the regions which were hosted previously on some other server back to their</span>
-<span class="source-line-no">285</span><span id="line-285"> // old servers</span>
-<span class="source-line-no">286</span><span id="line-286"> if (</span>
-<span class="source-line-no">287</span><span id="line-287"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">288</span><span id="line-288"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">289</span><span id="line-289"> ) {</span>
-<span class="source-line-no">290</span><span id="line-290"> // Get the first region index in the historical cache ratio list</span>
-<span class="source-line-no">291</span><span id="line-291"> Map.Entry<String, Pair<ServerName, Float>> regionEntry =</span>
-<span class="source-line-no">292</span><span id="line-292"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">293</span><span id="line-293"> String regionEncodedName = regionEntry.getKey();</span>
-<span class="source-line-no">294</span><span id="line-294"></span>
-<span class="source-line-no">295</span><span id="line-295"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">296</span><span id="line-296"> if (regionInfo == null) {</span>
-<span class="source-line-no">297</span><span id="line-297"> LOG.warn("Region {} does not exist", regionEncodedName);</span>
-<span class="source-line-no">298</span><span id="line-298"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">299</span><span id="line-299"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">300</span><span id="line-300"> }</span>
-<span class="source-line-no">301</span><span id="line-301"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">302</span><span id="line-302"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">303</span><span id="line-303"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">304</span><span id="line-304"> }</span>
-<span class="source-line-no">305</span><span id="line-305"></span>
-<span class="source-line-no">306</span><span id="line-306"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
-<span class="source-line-no">307</span><span id="line-307"></span>
-<span class="source-line-no">308</span><span id="line-308"> // Get the current host name for this region</span>
-<span class="source-line-no">309</span><span id="line-309"> thisServer = cluster.regionIndexToServerIndex[regionIndex];</span>
-<span class="source-line-no">310</span><span id="line-310"></span>
-<span class="source-line-no">311</span><span id="line-311"> // Get the old server index</span>
-<span class="source-line-no">312</span><span id="line-312"> otherServer = cluster.serversToIndex.get(regionEntry.getValue().getFirst().getAddress());</span>
-<span class="source-line-no">313</span><span id="line-313"></span>
-<span class="source-line-no">314</span><span id="line-314"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">315</span><span id="line-315"></span>
-<span class="source-line-no">316</span><span id="line-316"> if (otherServer < 0) {</span>
-<span class="source-line-no">317</span><span id="line-317"> // The old server has been moved to other host and hence, the region cannot be moved back</span>
-<span class="source-line-no">318</span><span id="line-318"> // to the old server</span>
-<span class="source-line-no">319</span><span id="line-319"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">320</span><span id="line-320"> LOG.debug(</span>
-<span class="source-line-no">321</span><span id="line-321"> "CacheAwareSkewnessCandidateGenerator: Region {} not moved to the old "</span>
-<span class="source-line-no">322</span><span id="line-322"> + "server {} as the server does not exist",</span>
-<span class="source-line-no">323</span><span id="line-323"> regionEncodedName, regionEntry.getValue().getFirst().getHostname());</span>
-<span class="source-line-no">324</span><span id="line-324"> }</span>
-<span class="source-line-no">325</span><span id="line-325"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">326</span><span id="line-326"> }</span>
-<span class="source-line-no">327</span><span id="line-327"></span>
-<span class="source-line-no">328</span><span id="line-328"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">329</span><span id="line-329"> LOG.debug(</span>
-<span class="source-line-no">330</span><span id="line-330"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it "</span>
-<span class="source-line-no">331</span><span id="line-331"> + "was hosted their earlier",</span>
-<span class="source-line-no">332</span><span id="line-332"> regionEncodedName, cluster.servers[thisServer].getHostname(),</span>
-<span class="source-line-no">333</span><span id="line-333"> cluster.servers[otherServer].getHostname());</span>
-<span class="source-line-no">334</span><span id="line-334"> }</span>
-<span class="source-line-no">335</span><span id="line-335"></span>
-<span class="source-line-no">336</span><span id="line-336"> return getAction(thisServer, regionIndex, otherServer, -1);</span>
-<span class="source-line-no">337</span><span id="line-337"> }</span>
-<span class="source-line-no">338</span><span id="line-338"></span>
-<span class="source-line-no">339</span><span id="line-339"> if (thisServer < 0 || otherServer < 0) {</span>
-<span class="source-line-no">340</span><span id="line-340"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">341</span><span id="line-341"> }</span>
-<span class="source-line-no">342</span><span id="line-342"></span>
-<span class="source-line-no">343</span><span id="line-343"> int regionIndexToMove = pickLeastCachedRegion(cluster, thisServer);</span>
-<span class="source-line-no">344</span><span id="line-344"> if (regionIndexToMove < 0) {</span>
-<span class="source-line-no">345</span><span id="line-345"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">346</span><span id="line-346"> LOG.debug("CacheAwareSkewnessCandidateGenerator: No region found for movement");</span>
-<span class="source-line-no">347</span><span id="line-347"> }</span>
-<span class="source-line-no">348</span><span id="line-348"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">349</span><span id="line-349"> }</span>
-<span class="source-line-no">350</span><span id="line-350"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">351</span><span id="line-351"> LOG.debug(</span>
-<span class="source-line-no">352</span><span id="line-352"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it is "</span>
-<span class="source-line-no">353</span><span id="line-353"> + "least cached on current server",</span>
-<span class="source-line-no">354</span><span id="line-354"> cluster.regions[regionIndexToMove].getEncodedName(),</span>
-<span class="source-line-no">355</span><span id="line-355"> cluster.servers[thisServer].getHostname(), cluster.servers[otherServer].getHostname());</span>
-<span class="source-line-no">356</span><span id="line-356"> }</span>
-<span class="source-line-no">357</span><span id="line-357"> return getAction(thisServer, regionIndexToMove, otherServer, -1);</span>
-<span class="source-line-no">358</span><span id="line-358"> }</span>
-<span class="source-line-no">359</span><span id="line-359"></span>
-<span class="source-line-no">360</span><span id="line-360"> private int pickLeastCachedRegion(BalancerClusterState cluster, int thisServer) {</span>
-<span class="source-line-no">361</span><span id="line-361"> float minCacheRatio = Float.MAX_VALUE;</span>
-<span class="source-line-no">362</span><span id="line-362"> int leastCachedRegion = -1;</span>
-<span class="source-line-no">363</span><span id="line-363"> for (int i = 0; i < cluster.regionsPerServer[thisServer].length; i++) {</span>
-<span class="source-line-no">364</span><span id="line-364"> int regionIndex = cluster.regionsPerServer[thisServer][i];</span>
-<span class="source-line-no">365</span><span id="line-365"></span>
-<span class="source-line-no">366</span><span id="line-366"> float cacheRatioOnCurrentServer =</span>
-<span class="source-line-no">367</span><span id="line-367"> cluster.getOrComputeRegionCacheRatio(regionIndex, thisServer);</span>
-<span class="source-line-no">368</span><span id="line-368"> if (cacheRatioOnCurrentServer < minCacheRatio) {</span>
-<span class="source-line-no">369</span><span id="line-369"> minCacheRatio = cacheRatioOnCurrentServer;</span>
-<span class="source-line-no">370</span><span id="line-370"> leastCachedRegion = regionIndex;</span>
-<span class="source-line-no">371</span><span id="line-371"> }</span>
-<span class="source-line-no">372</span><span id="line-372"> }</span>
-<span class="source-line-no">373</span><span id="line-373"> return leastCachedRegion;</span>
-<span class="source-line-no">374</span><span id="line-374"> }</span>
-<span class="source-line-no">375</span><span id="line-375"> }</span>
-<span class="source-line-no">376</span><span id="line-376"></span>
-<span class="source-line-no">377</span><span id="line-377"> static class CacheAwareRegionSkewnessCostFunction extends CostFunction {</span>
-<span class="source-line-no">378</span><span id="line-378"> static final String REGION_COUNT_SKEW_COST_KEY =</span>
-<span class="source-line-no">379</span><span id="line-379"> "hbase.master.balancer.stochastic.regionCountCost";</span>
-<span class="source-line-no">380</span><span id="line-380"> static final float DEFAULT_REGION_COUNT_SKEW_COST = 20;</span>
-<span class="source-line-no">381</span><span id="line-381"> private final DoubleArrayCost cost = new DoubleArrayCost();</span>
-<span class="source-line-no">382</span><span id="line-382"></span>
-<span class="source-line-no">383</span><span id="line-383"> CacheAwareRegionSkewnessCostFunction(Configuration conf) {</span>
-<span class="source-line-no">384</span><span id="line-384"> // Load multiplier should be the greatest as it is the most general way to balance data.</span>
-<span class="source-line-no">385</span><span id="line-385"> this.setMultiplier(conf.getFloat(REGION_COUNT_SKEW_COST_KEY, DEFAULT_REGION_COUNT_SKEW_COST));</span>
-<span class="source-line-no">386</span><span id="line-386"> }</span>
-<span class="source-line-no">387</span><span id="line-387"></span>
-<span class="source-line-no">388</span><span id="line-388"> @Override</span>
-<span class="source-line-no">389</span><span id="line-389"> void prepare(BalancerClusterState cluster) {</span>
-<span class="source-line-no">390</span><span id="line-390"> super.prepare(cluster);</span>
-<span class="source-line-no">391</span><span id="line-391"> cost.prepare(cluster.numServers);</span>
-<span class="source-line-no">392</span><span id="line-392"> cost.applyCostsChange(costs -> {</span>
-<span class="source-line-no">393</span><span id="line-393"> for (int i = 0; i < cluster.numServers; i++) {</span>
-<span class="source-line-no">394</span><span id="line-394"> costs[i] = cluster.regionsPerServer[i].length;</span>
-<span class="source-line-no">395</span><span id="line-395"> }</span>
-<span class="source-line-no">396</span><span id="line-396"> });</span>
-<span class="source-line-no">397</span><span id="line-397"> }</span>
-<span class="source-line-no">398</span><span id="line-398"></span>
-<span class="source-line-no">399</span><span id="line-399"> @Override</span>
-<span class="source-line-no">400</span><span id="line-400"> protected double cost() {</span>
-<span class="source-line-no">401</span><span id="line-401"> return cost.cost();</span>
-<span class="source-line-no">402</span><span id="line-402"> }</span>
-<span class="source-line-no">403</span><span id="line-403"></span>
-<span class="source-line-no">404</span><span id="line-404"> @Override</span>
-<span class="source-line-no">405</span><span id="line-405"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
-<span class="source-line-no">406</span><span id="line-406"> cost.applyCostsChange(costs -> {</span>
-<span class="source-line-no">407</span><span id="line-407"> costs[oldServer] = cluster.regionsPerServer[oldServer].length;</span>
-<span class="source-line-no">408</span><span id="line-408"> costs[newServer] = cluster.regionsPerServer[newServer].length;</span>
-<span class="source-line-no">409</span><span id="line-409"> });</span>
-<span class="source-line-no">410</span><span id="line-410"> }</span>
-<span class="source-line-no">411</span><span id="line-411"></span>
-<span class="source-line-no">412</span><span id="line-412"> public final void updateWeight(double[] weights) {</span>
-<span class="source-line-no">413</span><span id="line-413"> weights[GeneratorFunctionType.LOAD.ordinal()] += cost();</span>
-<span class="source-line-no">414</span><span id="line-414"> }</span>
-<span class="source-line-no">415</span><span id="line-415"> }</span>
-<span class="source-line-no">416</span><span id="line-416"></span>
-<span class="source-line-no">417</span><span id="line-417"> static class CacheAwareCostFunction extends CostFunction {</span>
-<span class="source-line-no">418</span><span id="line-418"> private static final String CACHE_COST_KEY = "hbase.master.balancer.stochastic.cacheCost";</span>
-<span class="source-line-no">419</span><span id="line-419"> private double cacheRatio;</span>
-<span class="source-line-no">420</span><span id="line-420"> private double bestCacheRatio;</span>
-<span class="source-line-no">421</span><span id="line-421"></span>
-<span class="source-line-no">422</span><span id="line-422"> private static final float DEFAULT_CACHE_COST = 20;</span>
+<span class="source-line-no">071</span><span id="line-71"> protected Map<Class<? extends CandidateGenerator>, CandidateGenerator></span>
+<span class="source-line-no">072</span><span id="line-72"> createCandidateGenerators() {</span>
+<span class="source-line-no">073</span><span id="line-73"> Map<Class<? extends CandidateGenerator>, CandidateGenerator> candidateGenerators =</span>
+<span class="source-line-no">074</span><span id="line-74"> new HashMap<>(2);</span>
+<span class="source-line-no">075</span><span id="line-75"> candidateGenerators.put(CacheAwareSkewnessCandidateGenerator.class,</span>
+<span class="source-line-no">076</span><span id="line-76"> new CacheAwareSkewnessCandidateGenerator());</span>
+<span class="source-line-no">077</span><span id="line-77"> candidateGenerators.put(CacheAwareCandidateGenerator.class, new CacheAwareCandidateGenerator());</span>
+<span class="source-line-no">078</span><span id="line-78"> return candidateGenerators;</span>
+<span class="source-line-no">079</span><span id="line-79"> }</span>
+<span class="source-line-no">080</span><span id="line-80"></span>
+<span class="source-line-no">081</span><span id="line-81"> @Override</span>
+<span class="source-line-no">082</span><span id="line-82"> protected List<CostFunction> createCostFunctions(Configuration configuration) {</span>
+<span class="source-line-no">083</span><span id="line-83"> List<CostFunction> costFunctions = new ArrayList<>();</span>
+<span class="source-line-no">084</span><span id="line-84"> addCostFunction(costFunctions, new CacheAwareRegionSkewnessCostFunction(configuration));</span>
+<span class="source-line-no">085</span><span id="line-85"> addCostFunction(costFunctions, new CacheAwareCostFunction(configuration));</span>
+<span class="source-line-no">086</span><span id="line-86"> return costFunctions;</span>
+<span class="source-line-no">087</span><span id="line-87"> }</span>
+<span class="source-line-no">088</span><span id="line-88"></span>
+<span class="source-line-no">089</span><span id="line-89"> private void addCostFunction(List<CostFunction> costFunctions, CostFunction costFunction) {</span>
+<span class="source-line-no">090</span><span id="line-90"> if (costFunction.getMultiplier() > 0) {</span>
+<span class="source-line-no">091</span><span id="line-91"> costFunctions.add(costFunction);</span>
+<span class="source-line-no">092</span><span id="line-92"> }</span>
+<span class="source-line-no">093</span><span id="line-93"> }</span>
+<span class="source-line-no">094</span><span id="line-94"></span>
+<span class="source-line-no">095</span><span id="line-95"> @Override</span>
+<span class="source-line-no">096</span><span id="line-96"> public void updateClusterMetrics(ClusterMetrics clusterMetrics) {</span>
+<span class="source-line-no">097</span><span id="line-97"> this.clusterStatus = clusterMetrics;</span>
+<span class="source-line-no">098</span><span id="line-98"> updateRegionLoad();</span>
+<span class="source-line-no">099</span><span id="line-99"> }</span>
+<span class="source-line-no">100</span><span id="line-100"></span>
+<span class="source-line-no">101</span><span id="line-101"> /**</span>
+<span class="source-line-no">102</span><span id="line-102"> * Collect the amount of region cached for all the regions from all the active region servers.</span>
+<span class="source-line-no">103</span><span id="line-103"> */</span>
+<span class="source-line-no">104</span><span id="line-104"> private void updateRegionLoad() {</span>
+<span class="source-line-no">105</span><span id="line-105"> loads = new HashMap<>();</span>
+<span class="source-line-no">106</span><span id="line-106"> regionCacheRatioOnOldServerMap = new HashMap<>();</span>
+<span class="source-line-no">107</span><span id="line-107"> Map<String, Pair<ServerName, Integer>> regionCacheRatioOnCurrentServerMap = new HashMap<>();</span>
+<span class="source-line-no">108</span><span id="line-108"></span>
+<span class="source-line-no">109</span><span id="line-109"> // Build current region cache statistics</span>
+<span class="source-line-no">110</span><span id="line-110"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
+<span class="source-line-no">111</span><span id="line-111"> // Create a map of region and the server where it is currently hosted</span>
+<span class="source-line-no">112</span><span id="line-112"> sm.getRegionMetrics().forEach((byte[] regionName, RegionMetrics rm) -> {</span>
+<span class="source-line-no">113</span><span id="line-113"> String regionEncodedName = RegionInfo.encodeRegionName(regionName);</span>
+<span class="source-line-no">114</span><span id="line-114"></span>
+<span class="source-line-no">115</span><span id="line-115"> Deque<BalancerRegionLoad> rload = new ArrayDeque<>();</span>
+<span class="source-line-no">116</span><span id="line-116"></span>
+<span class="source-line-no">117</span><span id="line-117"> // Get the total size of the hFiles in this region</span>
+<span class="source-line-no">118</span><span id="line-118"> int regionSizeMB = (int) rm.getRegionSizeMB().get(Size.Unit.MEGABYTE);</span>
+<span class="source-line-no">119</span><span id="line-119"></span>
+<span class="source-line-no">120</span><span id="line-120"> rload.add(new BalancerRegionLoad(rm));</span>
+<span class="source-line-no">121</span><span id="line-121"> // Maintain a map of region and it's total size. This is needed to calculate the cache</span>
+<span class="source-line-no">122</span><span id="line-122"> // ratios for the regions cached on old region servers</span>
+<span class="source-line-no">123</span><span id="line-123"> regionCacheRatioOnCurrentServerMap.put(regionEncodedName, new Pair<>(sn, regionSizeMB));</span>
+<span class="source-line-no">124</span><span id="line-124"> loads.put(regionEncodedName, rload);</span>
+<span class="source-line-no">125</span><span id="line-125"> });</span>
+<span class="source-line-no">126</span><span id="line-126"> });</span>
+<span class="source-line-no">127</span><span id="line-127"></span>
+<span class="source-line-no">128</span><span id="line-128"> // Build cache statistics for the regions hosted previously on old region servers</span>
+<span class="source-line-no">129</span><span id="line-129"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
+<span class="source-line-no">130</span><span id="line-130"> // Find if a region was previously hosted on a server other than the one it is currently</span>
+<span class="source-line-no">131</span><span id="line-131"> // hosted on.</span>
+<span class="source-line-no">132</span><span id="line-132"> sm.getRegionCachedInfo().forEach((String regionEncodedName, Integer regionSizeInCache) -> {</span>
+<span class="source-line-no">133</span><span id="line-133"> // If the region is found in regionCacheRatioOnCurrentServerMap, it is currently hosted on</span>
+<span class="source-line-no">134</span><span id="line-134"> // this server</span>
+<span class="source-line-no">135</span><span id="line-135"> if (regionCacheRatioOnCurrentServerMap.containsKey(regionEncodedName)) {</span>
+<span class="source-line-no">136</span><span id="line-136"> ServerName currentServer =</span>
+<span class="source-line-no">137</span><span id="line-137"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getFirst();</span>
+<span class="source-line-no">138</span><span id="line-138"> if (!ServerName.isSameAddress(currentServer, sn)) {</span>
+<span class="source-line-no">139</span><span id="line-139"> int regionSizeMB =</span>
+<span class="source-line-no">140</span><span id="line-140"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getSecond();</span>
+<span class="source-line-no">141</span><span id="line-141"> float regionCacheRatioOnOldServer =</span>
+<span class="source-line-no">142</span><span id="line-142"> regionSizeMB == 0 ? 0.0f : (float) regionSizeInCache / regionSizeMB;</span>
+<span class="source-line-no">143</span><span id="line-143"> regionCacheRatioOnOldServerMap.put(regionEncodedName,</span>
+<span class="source-line-no">144</span><span id="line-144"> new Pair<>(sn, regionCacheRatioOnOldServer));</span>
+<span class="source-line-no">145</span><span id="line-145"> }</span>
+<span class="source-line-no">146</span><span id="line-146"> }</span>
+<span class="source-line-no">147</span><span id="line-147"> });</span>
+<span class="source-line-no">148</span><span id="line-148"> });</span>
+<span class="source-line-no">149</span><span id="line-149"> }</span>
+<span class="source-line-no">150</span><span id="line-150"></span>
+<span class="source-line-no">151</span><span id="line-151"> private RegionInfo getRegionInfoByEncodedName(BalancerClusterState cluster, String regionName) {</span>
+<span class="source-line-no">152</span><span id="line-152"> Optional<RegionInfo> regionInfoOptional =</span>
+<span class="source-line-no">153</span><span id="line-153"> Arrays.stream(cluster.regions).filter((RegionInfo ri) -> {</span>
+<span class="source-line-no">154</span><span id="line-154"> return regionName.equals(ri.getEncodedName());</span>
+<span class="source-line-no">155</span><span id="line-155"> }).findFirst();</span>
+<span class="source-line-no">156</span><span id="line-156"></span>
+<span class="source-line-no">157</span><span id="line-157"> if (regionInfoOptional.isPresent()) {</span>
+<span class="source-line-no">158</span><span id="line-158"> return regionInfoOptional.get();</span>
+<span class="source-line-no">159</span><span id="line-159"> }</span>
+<span class="source-line-no">160</span><span id="line-160"> return null;</span>
+<span class="source-line-no">161</span><span id="line-161"> }</span>
+<span class="source-line-no">162</span><span id="line-162"></span>
+<span class="source-line-no">163</span><span id="line-163"> private class CacheAwareCandidateGenerator extends CandidateGenerator {</span>
+<span class="source-line-no">164</span><span id="line-164"> @Override</span>
+<span class="source-line-no">165</span><span id="line-165"> protected BalanceAction generate(BalancerClusterState cluster) {</span>
+<span class="source-line-no">166</span><span id="line-166"> // Move the regions to the servers they were previously hosted on based on the cache ratio</span>
+<span class="source-line-no">167</span><span id="line-167"> if (</span>
+<span class="source-line-no">168</span><span id="line-168"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
+<span class="source-line-no">169</span><span id="line-169"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
+<span class="source-line-no">170</span><span id="line-170"> ) {</span>
+<span class="source-line-no">171</span><span id="line-171"> Map.Entry<String, Pair<ServerName, Float>> regionCacheRatioServerMap =</span>
+<span class="source-line-no">172</span><span id="line-172"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
+<span class="source-line-no">173</span><span id="line-173"> // Get the server where this region was previously hosted</span>
+<span class="source-line-no">174</span><span id="line-174"> String regionEncodedName = regionCacheRatioServerMap.getKey();</span>
+<span class="source-line-no">175</span><span id="line-175"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
+<span class="source-line-no">176</span><span id="line-176"> if (regionInfo == null) {</span>
+<span class="source-line-no">177</span><span id="line-177"> LOG.warn("Region {} not found", regionEncodedName);</span>
+<span class="source-line-no">178</span><span id="line-178"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">179</span><span id="line-179"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">180</span><span id="line-180"> }</span>
+<span class="source-line-no">181</span><span id="line-181"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
+<span class="source-line-no">182</span><span id="line-182"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">183</span><span id="line-183"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">184</span><span id="line-184"> }</span>
+<span class="source-line-no">185</span><span id="line-185"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
+<span class="source-line-no">186</span><span id="line-186"> int oldServerIndex = cluster.serversToIndex</span>
+<span class="source-line-no">187</span><span id="line-187"> .get(regionCacheRatioOnOldServerMap.get(regionEncodedName).getFirst().getAddress());</span>
+<span class="source-line-no">188</span><span id="line-188"> if (oldServerIndex < 0) {</span>
+<span class="source-line-no">189</span><span id="line-189"> LOG.warn("Server previously hosting region {} not found", regionEncodedName);</span>
+<span class="source-line-no">190</span><span id="line-190"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">191</span><span id="line-191"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">192</span><span id="line-192"> }</span>
+<span class="source-line-no">193</span><span id="line-193"></span>
+<span class="source-line-no">194</span><span id="line-194"> float oldRegionCacheRatio =</span>
+<span class="source-line-no">195</span><span id="line-195"> cluster.getOrComputeRegionCacheRatio(regionIndex, oldServerIndex);</span>
+<span class="source-line-no">196</span><span id="line-196"> int currentServerIndex = cluster.regionIndexToServerIndex[regionIndex];</span>
+<span class="source-line-no">197</span><span id="line-197"> float currentRegionCacheRatio =</span>
+<span class="source-line-no">198</span><span id="line-198"> cluster.getOrComputeRegionCacheRatio(regionIndex, currentServerIndex);</span>
+<span class="source-line-no">199</span><span id="line-199"></span>
+<span class="source-line-no">200</span><span id="line-200"> BalanceAction action = generatePlan(cluster, regionIndex, currentServerIndex,</span>
+<span class="source-line-no">201</span><span id="line-201"> currentRegionCacheRatio, oldServerIndex, oldRegionCacheRatio);</span>
+<span class="source-line-no">202</span><span id="line-202"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">203</span><span id="line-203"> return action;</span>
+<span class="source-line-no">204</span><span id="line-204"> }</span>
+<span class="source-line-no">205</span><span id="line-205"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">206</span><span id="line-206"> }</span>
+<span class="source-line-no">207</span><span id="line-207"></span>
+<span class="source-line-no">208</span><span id="line-208"> private BalanceAction generatePlan(BalancerClusterState cluster, int regionIndex,</span>
+<span class="source-line-no">209</span><span id="line-209"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
+<span class="source-line-no">210</span><span id="line-210"> float cacheRatioOnOldServer) {</span>
+<span class="source-line-no">211</span><span id="line-211"> return moveRegionToOldServer(cluster, regionIndex, currentServerIndex,</span>
+<span class="source-line-no">212</span><span id="line-212"> cacheRatioOnCurrentServer, oldServerIndex, cacheRatioOnOldServer)</span>
+<span class="source-line-no">213</span><span id="line-213"> ? getAction(currentServerIndex, regionIndex, oldServerIndex, -1)</span>
+<span class="source-line-no">214</span><span id="line-214"> : BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">215</span><span id="line-215"> }</span>
+<span class="source-line-no">216</span><span id="line-216"></span>
+<span class="source-line-no">217</span><span id="line-217"> private boolean moveRegionToOldServer(BalancerClusterState cluster, int regionIndex,</span>
+<span class="source-line-no">218</span><span id="line-218"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
+<span class="source-line-no">219</span><span id="line-219"> float cacheRatioOnOldServer) {</span>
+<span class="source-line-no">220</span><span id="line-220"> // Find if the region has already moved by comparing the current server index with the</span>
+<span class="source-line-no">221</span><span id="line-221"> // current server index. This can happen when other candidate generator has moved the region</span>
+<span class="source-line-no">222</span><span id="line-222"> if (currentServerIndex < 0 || oldServerIndex < 0) {</span>
+<span class="source-line-no">223</span><span id="line-223"> return false;</span>
+<span class="source-line-no">224</span><span id="line-224"> }</span>
+<span class="source-line-no">225</span><span id="line-225"></span>
+<span class="source-line-no">226</span><span id="line-226"> DecimalFormat df = new DecimalFormat("#");</span>
+<span class="source-line-no">227</span><span id="line-227"> df.setMaximumFractionDigits(4);</span>
+<span class="source-line-no">228</span><span id="line-228"></span>
+<span class="source-line-no">229</span><span id="line-229"> float cacheRatioDiffThreshold = 0.6f;</span>
+<span class="source-line-no">230</span><span id="line-230"></span>
+<span class="source-line-no">231</span><span id="line-231"> // Conditions for moving the region</span>
+<span class="source-line-no">232</span><span id="line-232"></span>
+<span class="source-line-no">233</span><span id="line-233"> // If the region is fully cached on the old server, move the region back</span>
+<span class="source-line-no">234</span><span id="line-234"> if (cacheRatioOnOldServer == 1.0f) {</span>
+<span class="source-line-no">235</span><span id="line-235"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">236</span><span id="line-236"> LOG.debug("Region {} moved to the old server {} as it is fully cached there",</span>
+<span class="source-line-no">237</span><span id="line-237"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[oldServerIndex]);</span>
+<span class="source-line-no">238</span><span id="line-238"> }</span>
+<span class="source-line-no">239</span><span id="line-239"> return true;</span>
+<span class="source-line-no">240</span><span id="line-240"> }</span>
+<span class="source-line-no">241</span><span id="line-241"></span>
+<span class="source-line-no">242</span><span id="line-242"> // Move the region back to the old server if it is cached equally on both the servers</span>
+<span class="source-line-no">243</span><span id="line-243"> if (cacheRatioOnCurrentServer == cacheRatioOnOldServer) {</span>
+<span class="source-line-no">244</span><span id="line-244"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">245</span><span id="line-245"> LOG.debug(</span>
+<span class="source-line-no">246</span><span id="line-246"> "Region {} moved from {} to {} as the region is cached {} equally on both servers",</span>
+<span class="source-line-no">247</span><span id="line-247"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">248</span><span id="line-248"> cluster.servers[oldServerIndex], df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">249</span><span id="line-249"> }</span>
+<span class="source-line-no">250</span><span id="line-250"> return true;</span>
+<span class="source-line-no">251</span><span id="line-251"> }</span>
+<span class="source-line-no">252</span><span id="line-252"></span>
+<span class="source-line-no">253</span><span id="line-253"> // If the region is not fully cached on either of the servers, move the region back to the</span>
+<span class="source-line-no">254</span><span id="line-254"> // old server if the region cache ratio on the current server is still much less than the old</span>
+<span class="source-line-no">255</span><span id="line-255"> // server</span>
+<span class="source-line-no">256</span><span id="line-256"> if (</span>
+<span class="source-line-no">257</span><span id="line-257"> cacheRatioOnOldServer > 0.0f</span>
+<span class="source-line-no">258</span><span id="line-258"> && cacheRatioOnCurrentServer / cacheRatioOnOldServer < cacheRatioDiffThreshold</span>
+<span class="source-line-no">259</span><span id="line-259"> ) {</span>
+<span class="source-line-no">260</span><span id="line-260"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">261</span><span id="line-261"> LOG.debug(</span>
+<span class="source-line-no">262</span><span id="line-262"> "Region {} moved from {} to {} as region cache ratio {} is better than the current "</span>
+<span class="source-line-no">263</span><span id="line-263"> + "cache ratio {}",</span>
+<span class="source-line-no">264</span><span id="line-264"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">265</span><span id="line-265"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
+<span class="source-line-no">266</span><span id="line-266"> df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">267</span><span id="line-267"> }</span>
+<span class="source-line-no">268</span><span id="line-268"> return true;</span>
+<span class="source-line-no">269</span><span id="line-269"> }</span>
+<span class="source-line-no">270</span><span id="line-270"></span>
+<span class="source-line-no">271</span><span id="line-271"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">272</span><span id="line-272"> LOG.debug(</span>
+<span class="source-line-no">273</span><span id="line-273"> "Region {} not moved from {} to {} with current cache ratio {} and old cache ratio {}",</span>
+<span class="source-line-no">274</span><span id="line-274"> cluster.regions[regionIndex], cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">275</span><span id="line-275"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
+<span class="source-line-no">276</span><span id="line-276"> df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">277</span><span id="line-277"> }</span>
+<span class="source-line-no">278</span><span id="line-278"> return false;</span>
+<span class="source-line-no">279</span><span id="line-279"> }</span>
+<span class="source-line-no">280</span><span id="line-280"> }</span>
+<span class="source-line-no">281</span><span id="line-281"></span>
+<span class="source-line-no">282</span><span id="line-282"> private class CacheAwareSkewnessCandidateGenerator extends LoadCandidateGenerator {</span>
+<span class="source-line-no">283</span><span id="line-283"> @Override</span>
+<span class="source-line-no">284</span><span id="line-284"> BalanceAction pickRandomRegions(BalancerClusterState cluster, int thisServer, int otherServer) {</span>
+<span class="source-line-no">285</span><span id="line-285"> // First move all the regions which were hosted previously on some other server back to their</span>
+<span class="source-line-no">286</span><span id="line-286"> // old servers</span>
+<span class="source-line-no">287</span><span id="line-287"> if (</span>
+<span class="source-line-no">288</span><span id="line-288"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
+<span class="source-line-no">289</span><span id="line-289"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
+<span class="source-line-no">290</span><span id="line-290"> ) {</span>
+<span class="source-line-no">291</span><span id="line-291"> // Get the first region index in the historical cache ratio list</span>
+<span class="source-line-no">292</span><span id="line-292"> Map.Entry<String, Pair<ServerName, Float>> regionEntry =</span>
+<span class="source-line-no">293</span><span id="line-293"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
+<span class="source-line-no">294</span><span id="line-294"> String regionEncodedName = regionEntry.getKey();</span>
+<span class="source-line-no">295</span><span id="line-295"></span>
+<span class="source-line-no">296</span><span id="line-296"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
+<span class="source-line-no">297</span><span id="line-297"> if (regionInfo == null) {</span>
+<span class="source-line-no">298</span><span id="line-298"> LOG.warn("Region {} does not exist", regionEncodedName);</span>
+<span class="source-line-no">299</span><span id="line-299"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">300</span><span id="line-300"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">301</span><span id="line-301"> }</span>
+<span class="source-line-no">302</span><span id="line-302"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
+<span class="source-line-no">303</span><span id="line-303"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">304</span><span id="line-304"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">305</span><span id="line-305"> }</span>
+<span class="source-line-no">306</span><span id="line-306"></span>
+<span class="source-line-no">307</span><span id="line-307"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
+<span class="source-line-no">308</span><span id="line-308"></span>
+<span class="source-line-no">309</span><span id="line-309"> // Get the current host name for this region</span>
+<span class="source-line-no">310</span><span id="line-310"> thisServer = cluster.regionIndexToServerIndex[regionIndex];</span>
+<span class="source-line-no">311</span><span id="line-311"></span>
+<span class="source-line-no">312</span><span id="line-312"> // Get the old server index</span>
+<span class="source-line-no">313</span><span id="line-313"> otherServer = cluster.serversToIndex.get(regionEntry.getValue().getFirst().getAddress());</span>
+<span class="source-line-no">314</span><span id="line-314"></span>
+<span class="source-line-no">315</span><span id="line-315"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">316</span><span id="line-316"></span>
+<span class="source-line-no">317</span><span id="line-317"> if (otherServer < 0) {</span>
+<span class="source-line-no">318</span><span id="line-318"> // The old server has been moved to other host and hence, the region cannot be moved back</span>
+<span class="source-line-no">319</span><span id="line-319"> // to the old server</span>
+<span class="source-line-no">320</span><span id="line-320"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">321</span><span id="line-321"> LOG.debug(</span>
+<span class="source-line-no">322</span><span id="line-322"> "CacheAwareSkewnessCandidateGenerator: Region {} not moved to the old "</span>
+<span class="source-line-no">323</span><span id="line-323"> + "server {} as the server does not exist",</span>
+<span class="source-line-no">324</span><span id="line-324"> regionEncodedName, regionEntry.getValue().getFirst().getHostname());</span>
+<span class="source-line-no">325</span><span id="line-325"> }</span>
+<span class="source-line-no">326</span><span id="line-326"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">327</span><span id="line-327"> }</span>
+<span class="source-line-no">328</span><span id="line-328"></span>
+<span class="source-line-no">329</span><span id="line-329"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">330</span><span id="line-330"> LOG.debug(</span>
+<span class="source-line-no">331</span><span id="line-331"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it "</span>
+<span class="source-line-no">332</span><span id="line-332"> + "was hosted their earlier",</span>
+<span class="source-line-no">333</span><span id="line-333"> regionEncodedName, cluster.servers[thisServer].getHostname(),</span>
+<span class="source-line-no">334</span><span id="line-334"> cluster.servers[otherServer].getHostname());</span>
+<span class="source-line-no">335</span><span id="line-335"> }</span>
+<span class="source-line-no">336</span><span id="line-336"></span>
+<span class="source-line-no">337</span><span id="line-337"> return getAction(thisServer, regionIndex, otherServer, -1);</span>
+<span class="source-line-no">338</span><span id="line-338"> }</span>
+<span class="source-line-no">339</span><span id="line-339"></span>
+<span class="source-line-no">340</span><span id="line-340"> if (thisServer < 0 || otherServer < 0) {</span>
+<span class="source-line-no">341</span><span id="line-341"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">342</span><span id="line-342"> }</span>
+<span class="source-line-no">343</span><span id="line-343"></span>
+<span class="source-line-no">344</span><span id="line-344"> int regionIndexToMove = pickLeastCachedRegion(cluster, thisServer);</span>
+<span class="source-line-no">345</span><span id="line-345"> if (regionIndexToMove < 0) {</span>
+<span class="source-line-no">346</span><span id="line-346"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">347</span><span id="line-347"> LOG.debug("CacheAwareSkewnessCandidateGenerator: No region found for movement");</span>
+<span class="source-line-no">348</span><span id="line-348"> }</span>
+<span class="source-line-no">349</span><span id="line-349"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">350</span><span id="line-350"> }</span>
+<span class="source-line-no">351</span><span id="line-351"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">352</span><span id="line-352"> LOG.debug(</span>
+<span class="source-line-no">353</span><span id="line-353"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it is "</span>
+<span class="source-line-no">354</span><span id="line-354"> + "least cached on current server",</span>
+<span class="source-line-no">355</span><span id="line-355"> cluster.regions[regionIndexToMove].getEncodedName(),</span>
+<span class="source-line-no">356</span><span id="line-356"> cluster.servers[thisServer].getHostname(), cluster.servers[otherServer].getHostname());</span>
+<span class="source-line-no">357</span><span id="line-357"> }</span>
+<span class="source-line-no">358</span><span id="line-358"> return getAction(thisServer, regionIndexToMove, otherServer, -1);</span>
+<span class="source-line-no">359</span><span id="line-359"> }</span>
+<span class="source-line-no">360</span><span id="line-360"></span>
+<span class="source-line-no">361</span><span id="line-361"> private int pickLeastCachedRegion(BalancerClusterState cluster, int thisServer) {</span>
+<span class="source-line-no">362</span><span id="line-362"> float minCacheRatio = Float.MAX_VALUE;</span>
+<span class="source-line-no">363</span><span id="line-363"> int leastCachedRegion = -1;</span>
+<span class="source-line-no">364</span><span id="line-364"> for (int i = 0; i < cluster.regionsPerServer[thisServer].length; i++) {</span>
+<span class="source-line-no">365</span><span id="line-365"> int regionIndex = cluster.regionsPerServer[thisServer][i];</span>
+<span class="source-line-no">366</span><span id="line-366"></span>
+<span class="source-line-no">367</span><span id="line-367"> float cacheRatioOnCurrentServer =</span>
+<span class="source-line-no">368</span><span id="line-368"> cluster.getOrComputeRegionCacheRatio(regionIndex, thisServer);</span>
+<span class="source-line-no">369</span><span id="line-369"> if (cacheRatioOnCurrentServer < minCacheRatio) {</span>
+<span class="source-line-no">370</span><span id="line-370"> minCacheRatio = cacheRatioOnCurrentServer;</span>
+<span class="source-line-no">371</span><span id="line-371"> leastCachedRegion = regionIndex;</span>
+<span class="source-line-no">372</span><span id="line-372"> }</span>
+<span class="source-line-no">373</span><span id="line-373"> }</span>
+<span class="source-line-no">374</span><span id="line-374"> return leastCachedRegion;</span>
+<span class="source-line-no">375</span><span id="line-375"> }</span>
+<span class="source-line-no">376</span><span id="line-376"> }</span>
+<span class="source-line-no">377</span><span id="line-377"></span>
+<span class="source-line-no">378</span><span id="line-378"> static class CacheAwareRegionSkewnessCostFunction extends CostFunction {</span>
+<span class="source-line-no">379</span><span id="line-379"> static final String REGION_COUNT_SKEW_COST_KEY =</span>
+<span class="source-line-no">380</span><span id="line-380"> "hbase.master.balancer.stochastic.regionCountCost";</span>
+<span class="source-line-no">381</span><span id="line-381"> static final float DEFAULT_REGION_COUNT_SKEW_COST = 20;</span>
+<span class="source-line-no">382</span><span id="line-382"> private final DoubleArrayCost cost = new DoubleArrayCost();</span>
+<span class="source-line-no">383</span><span id="line-383"></span>
+<span class="source-line-no">384</span><span id="line-384"> CacheAwareRegionSkewnessCostFunction(Configuration conf) {</span>
+<span class="source-line-no">385</span><span id="line-385"> // Load multiplier should be the greatest as it is the most general way to balance data.</span>
+<span class="source-line-no">386</span><span id="line-386"> this.setMultiplier(conf.getFloat(REGION_COUNT_SKEW_COST_KEY, DEFAULT_REGION_COUNT_SKEW_COST));</span>
+<span class="source-line-no">387</span><span id="line-387"> }</span>
+<span class="source-line-no">388</span><span id="line-388"></span>
+<span class="source-line-no">389</span><span id="line-389"> @Override</span>
+<span class="source-line-no">390</span><span id="line-390"> void prepare(BalancerClusterState cluster) {</span>
+<span class="source-line-no">391</span><span id="line-391"> super.prepare(cluster);</span>
+<span class="source-line-no">392</span><span id="line-392"> cost.prepare(cluster.numServers);</span>
+<span class="source-line-no">393</span><span id="line-393"> cost.applyCostsChange(costs -> {</span>
+<span class="source-line-no">394</span><span id="line-394"> for (int i = 0; i < cluster.numServers; i++) {</span>
+<span class="source-line-no">395</span><span id="line-395"> costs[i] = cluster.regionsPerServer[i].length;</span>
+<span class="source-line-no">396</span><span id="line-396"> }</span>
+<span class="source-line-no">397</span><span id="line-397"> });</span>
+<span class="source-line-no">398</span><span id="line-398"> }</span>
+<span class="source-line-no">399</span><span id="line-399"></span>
+<span class="source-line-no">400</span><span id="line-400"> @Override</span>
+<span class="source-line-no">401</span><span id="line-401"> protected double cost() {</span>
+<span class="source-line-no">402</span><span id="line-402"> return cost.cost();</span>
+<span class="source-line-no">403</span><span id="line-403"> }</span>
+<span class="source-line-no">404</span><span id="line-404"></span>
+<span class="source-line-no">405</span><span id="line-405"> @Override</span>
+<span class="source-line-no">406</span><span id="line-406"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
+<span class="source-line-no">407</span><span id="line-407"> cost.applyCostsChange(costs -> {</span>
+<span class="source-line-no">408</span><span id="line-408"> costs[oldServer] = cluster.regionsPerServer[oldServer].length;</span>
+<span class="source-line-no">409</span><span id="line-409"> costs[newServer] = cluster.regionsPerServer[newServer].length;</span>
+<span class="source-line-no">410</span><span id="line-410"> });</span>
+<span class="source-line-no">411</span><span id="line-411"> }</span>
+<span class="source-line-no">412</span><span id="line-412"></span>
+<span class="source-line-no">413</span><span id="line-413"> @Override</span>
+<span class="source-line-no">414</span><span id="line-414"> public final void updateWeight(Map<Class<? extends CandidateGenerator>, Double> weights) {</span>
+<span class="source-line-no">415</span><span id="line-415"> weights.merge(LoadCandidateGenerator.class, cost(), Double::sum);</span>
+<span class="source-line-no">416</span><span id="line-416"> }</span>
+<span class="source-line-no">417</span><span id="line-417"> }</span>
+<span class="source-line-no">418</span><span id="line-418"></span>
+<span class="source-line-no">419</span><span id="line-419"> static class CacheAwareCostFunction extends CostFunction {</span>
+<span class="source-line-no">420</span><span id="line-420"> private static final String CACHE_COST_KEY = "hbase.master.balancer.stochastic.cacheCost";</span>
+<span class="source-line-no">421</span><span id="line-421"> private double cacheRatio;</span>
+<span class="source-line-no">422</span><span id="line-422"> private double bestCacheRatio;</span>
<span class="source-line-no">423</span><span id="line-423"></span>
-<span class="source-line-no">424</span><span id="line-424"> CacheAwareCostFunction(Configuration conf) {</span>
-<span class="source-line-no">425</span><span id="line-425"> boolean isPersistentCache = conf.get(BUCKET_CACHE_PERSISTENT_PATH_KEY) != null;</span>
-<span class="source-line-no">426</span><span id="line-426"> // Disable the CacheAwareCostFunction if the cached file list persistence is not enabled</span>
-<span class="source-line-no">427</span><span id="line-427"> this.setMultiplier(</span>
-<span class="source-line-no">428</span><span id="line-428"> !isPersistentCache ? 0.0f : conf.getFloat(CACHE_COST_KEY, DEFAULT_CACHE_COST));</span>
-<span class="source-line-no">429</span><span id="line-429"> bestCacheRatio = 0.0;</span>
-<span class="source-line-no">430</span><span id="line-430"> cacheRatio = 0.0;</span>
-<span class="source-line-no">431</span><span id="line-431"> }</span>
-<span class="source-line-no">432</span><span id="line-432"></span>
-<span class="source-line-no">433</span><span id="line-433"> @Override</span>
-<span class="source-line-no">434</span><span id="line-434"> void prepare(BalancerClusterState cluster) {</span>
-<span class="source-line-no">435</span><span id="line-435"> super.prepare(cluster);</span>
-<span class="source-line-no">436</span><span id="line-436"> cacheRatio = 0.0;</span>
-<span class="source-line-no">437</span><span id="line-437"> bestCacheRatio = 0.0;</span>
-<span class="source-line-no">438</span><span id="line-438"></span>
-<span class="source-line-no">439</span><span id="line-439"> for (int region = 0; region < cluster.numRegions; region++) {</span>
-<span class="source-line-no">440</span><span id="line-440"> cacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
-<span class="source-line-no">441</span><span id="line-441"> cluster.regionIndexToServerIndex[region]);</span>
-<span class="source-line-no">442</span><span id="line-442"> bestCacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
-<span class="source-line-no">443</span><span id="line-443"> getServerWithBestCacheRatioForRegion(region));</span>
-<span class="source-line-no">444</span><span id="line-444"> }</span>
-<span class="source-line-no">445</span><span id="line-445"></span>
-<span class="source-line-no">446</span><span id="line-446"> cacheRatio = bestCacheRatio == 0 ? 1.0 : cacheRatio / bestCacheRatio;</span>
-<span class="source-line-no">447</span><span id="line-447"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">448</span><span id="line-448"> LOG.debug("CacheAwareCostFunction: Cost: {}", 1 - cacheRatio);</span>
-<span class="source-line-no">449</span><span id="line-449"> }</span>
-<span class="source-line-no">450</span><span id="line-450"> }</span>
-<span class="source-line-no">451</span><span id="line-451"></span>
-<span class="source-line-no">452</span><span id="line-452"> @Override</span>
-<span class="source-line-no">453</span><span id="line-453"> protected double cost() {</span>
-<span class="source-line-no">454</span><span id="line-454"> return scale(0, 1, 1 - cacheRatio);</span>
-<span class="source-line-no">455</span><span id="line-455"> }</span>
-<span class="source-line-no">456</span><span id="line-456"></span>
-<span class="source-line-no">457</span><span id="line-457"> @Override</span>
-<span class="source-line-no">458</span><span id="line-458"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
-<span class="source-line-no">459</span><span id="line-459"> double regionCacheRatioOnOldServer =</span>
-<span class="source-line-no">460</span><span id="line-460"> cluster.getOrComputeWeightedRegionCacheRatio(region, oldServer);</span>
-<span class="source-line-no">461</span><span id="line-461"> double regionCacheRatioOnNewServer =</span>
-<span class="source-line-no">462</span><span id="line-462"> cluster.getOrComputeWeightedRegionCacheRatio(region, newServer);</span>
-<span class="source-line-no">463</span><span id="line-463"> double cacheRatioDiff = regionCacheRatioOnNewServer - regionCacheRatioOnOldServer;</span>
-<span class="source-line-no">464</span><span id="line-464"> double normalizedDelta = bestCacheRatio == 0.0 ? 0.0 : cacheRatioDiff / bestCacheRatio;</span>
-<span class="source-line-no">465</span><span id="line-465"> cacheRatio += normalizedDelta;</span>
-<span class="source-line-no">466</span><span id="line-466"> if (LOG.isDebugEnabled() && (cacheRatio < 0.0 || cacheRatio > 1.0)) {</span>
-<span class="source-line-no">467</span><span id="line-467"> LOG.debug(</span>
-<span class="source-line-no">468</span><span id="line-468"> "CacheAwareCostFunction:regionMoved:region:{}:from:{}:to:{}:regionCacheRatioOnOldServer:{}:"</span>
-<span class="source-line-no">469</span><span id="line-469"> + "regionCacheRatioOnNewServer:{}:bestRegionCacheRatio:{}:cacheRatio:{}",</span>
-<span class="source-line-no">470</span><span id="line-470"> cluster.regions[region].getEncodedName(), cluster.servers[oldServer].getHostname(),</span>
-<span class="source-line-no">471</span><span id="line-471"> cluster.servers[newServer].getHostname(), regionCacheRatioOnOldServer,</span>
-<span class="source-line-no">472</span><span id="line-472"> regionCacheRatioOnNewServer, bestCacheRatio, cacheRatio);</span>
-<span class="source-line-no">473</span><span id="line-473"> }</span>
-<span class="source-line-no">474</span><span id="line-474"> }</span>
-<span class="source-line-no">475</span><span id="line-475"></span>
-<span class="source-line-no">476</span><span id="line-476"> private int getServerWithBestCacheRatioForRegion(int region) {</span>
-<span class="source-line-no">477</span><span id="line-477"> return cluster.getOrComputeServerWithBestRegionCachedRatio()[region];</span>
-<span class="source-line-no">478</span><span id="line-478"> }</span>
-<span class="source-line-no">479</span><span id="line-479"></span>
-<span class="source-line-no">480</span><span id="line-480"> @Override</span>
-<span class="source-line-no">481</span><span id="line-481"> public final void updateWeight(double[] weights) {</span>
-<span class="source-line-no">482</span><span id="line-482"> weights[GeneratorFunctionType.CACHE_RATIO.ordinal()] += cost();</span>
-<span class="source-line-no">483</span><span id="line-483"> }</span>
-<span class="source-line-no">484</span><span id="line-484"> }</span>
-<span class="source-line-no">485</span><span id="line-485">}</span>
+<span class="source-line-no">424</span><span id="line-424"> private static final float DEFAULT_CACHE_COST = 20;</span>
+<span class="source-line-no">425</span><span id="line-425"></span>
+<span class="source-line-no">426</span><span id="line-426"> CacheAwareCostFunction(Configuration conf) {</span>
+<span class="source-line-no">427</span><span id="line-427"> boolean isPersistentCache = conf.get(BUCKET_CACHE_PERSISTENT_PATH_KEY) != null;</span>
+<span class="source-line-no">428</span><span id="line-428"> // Disable the CacheAwareCostFunction if the cached file list persistence is not enabled</span>
+<span class="source-line-no">429</span><span id="line-429"> this.setMultiplier(</span>
+<span class="source-line-no">430</span><span id="line-430"> !isPersistentCache ? 0.0f : conf.getFloat(CACHE_COST_KEY, DEFAULT_CACHE_COST));</span>
+<span class="source-line-no">431</span><span id="line-431"> bestCacheRatio = 0.0;</span>
+<span class="source-line-no">432</span><span id="line-432"> cacheRatio = 0.0;</span>
+<span class="source-line-no">433</span><span id="line-433"> }</span>
+<span class="source-line-no">434</span><span id="line-434"></span>
+<span class="source-line-no">435</span><span id="line-435"> @Override</span>
+<span class="source-line-no">436</span><span id="line-436"> void prepare(BalancerClusterState cluster) {</span>
+<span class="source-line-no">437</span><span id="line-437"> super.prepare(cluster);</span>
+<span class="source-line-no">438</span><span id="line-438"> cacheRatio = 0.0;</span>
+<span class="source-line-no">439</span><span id="line-439"> bestCacheRatio = 0.0;</span>
+<span class="source-line-no">440</span><span id="line-440"></span>
+<span class="source-line-no">441</span><span id="line-441"> for (int region = 0; region < cluster.numRegions; region++) {</span>
+<span class="source-line-no">442</span><span id="line-442"> cacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
+<span class="source-line-no">443</span><span id="line-443"> cluster.regionIndexToServerIndex[region]);</span>
+<span class="source-line-no">444</span><span id="line-444"> bestCacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
+<span class="source-line-no">445</span><span id="line-445"> getServerWithBestCacheRatioForRegion(region));</span>
+<span class="source-line-no">446</span><span id="line-446"> }</span>
+<span class="source-line-no">447</span><span id="line-447"></span>
+<span class="source-line-no">448</span><span id="line-448"> cacheRatio = bestCacheRatio == 0 ? 1.0 : cacheRatio / bestCacheRatio;</span>
+<span class="source-line-no">449</span><span id="line-449"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">450</span><span id="line-450"> LOG.debug("CacheAwareCostFunction: Cost: {}", 1 - cacheRatio);</span>
+<span class="source-line-no">451</span><span id="line-451"> }</span>
+<span class="source-line-no">452</span><span id="line-452"> }</span>
+<span class="source-line-no">453</span><span id="line-453"></span>
+<span class="source-line-no">454</span><span id="line-454"> @Override</span>
+<span class="source-line-no">455</span><span id="line-455"> protected double cost() {</span>
+<span class="source-line-no">456</span><span id="line-456"> return scale(0, 1, 1 - cacheRatio);</span>
+<span class="source-line-no">457</span><span id="line-457"> }</span>
+<span class="source-line-no">458</span><span id="line-458"></span>
+<span class="source-line-no">459</span><span id="line-459"> @Override</span>
+<span class="source-line-no">460</span><span id="line-460"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
+<span class="source-line-no">461</span><span id="line-461"> double regionCacheRatioOnOldServer =</span>
+<span class="source-line-no">462</span><span id="line-462"> cluster.getOrComputeWeightedRegionCacheRatio(region, oldServer);</span>
+<span class="source-line-no">463</span><span id="line-463"> double regionCacheRatioOnNewServer =</span>
+<span class="source-line-no">464</span><span id="line-464"> cluster.getOrComputeWeightedRegionCacheRatio(region, newServer);</span>
+<span class="source-line-no">465</span><span id="line-465"> double cacheRatioDiff = regionCacheRatioOnNewServer - regionCacheRatioOnOldServer;</span>
+<span class="source-line-no">466</span><span id="line-466"> double normalizedDelta = bestCacheRatio == 0.0 ? 0.0 : cacheRatioDiff / bestCacheRatio;</span>
+<span class="source-line-no">467</span><span id="line-467"> cacheRatio += normalizedDelta;</span>
+<span class="source-line-no">468</span><span id="line-468"> if (LOG.isDebugEnabled() && (cacheRatio < 0.0 || cacheRatio > 1.0)) {</span>
+<span class="source-line-no">469</span><span id="line-469"> LOG.debug(</span>
+<span class="source-line-no">470</span><span id="line-470"> "CacheAwareCostFunction:regionMoved:region:{}:from:{}:to:{}:regionCacheRatioOnOldServer:{}:"</span>
+<span class="source-line-no">471</span><span id="line-471"> + "regionCacheRatioOnNewServer:{}:bestRegionCacheRatio:{}:cacheRatio:{}",</span>
+<span class="source-line-no">472</span><span id="line-472"> cluster.regions[region].getEncodedName(), cluster.servers[oldServer].getHostname(),</span>
+<span class="source-line-no">473</span><span id="line-473"> cluster.servers[newServer].getHostname(), regionCacheRatioOnOldServer,</span>
+<span class="source-line-no">474</span><span id="line-474"> regionCacheRatioOnNewServer, bestCacheRatio, cacheRatio);</span>
+<span class="source-line-no">475</span><span id="line-475"> }</span>
+<span class="source-line-no">476</span><span id="line-476"> }</span>
+<span class="source-line-no">477</span><span id="line-477"></span>
+<span class="source-line-no">478</span><span id="line-478"> private int getServerWithBestCacheRatioForRegion(int region) {</span>
+<span class="source-line-no">479</span><span id="line-479"> return cluster.getOrComputeServerWithBestRegionCachedRatio()[region];</span>
+<span class="source-line-no">480</span><span id="line-480"> }</span>
+<span class="source-line-no">481</span><span id="line-481"></span>
+<span class="source-line-no">482</span><span id="line-482"> @Override</span>
+<span class="source-line-no">483</span><span id="line-483"> public void updateWeight(Map<Class<? extends CandidateGenerator>, Double> weights) {</span>
+<span class="source-line-no">484</span><span id="line-484"> weights.merge(LoadCandidateGenerator.class, cost(), Double::sum);</span>
+<span class="source-line-no">485</span><span id="line-485"> }</span>
+<span class="source-line-no">486</span><span id="line-486"> }</span>
+<span class="source-line-no">487</span><span id="line-487">}</span>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
index 77f28942a9d..534220933b1 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareCostFunction.html
@@ -81,421 +81,423 @@
<span class="source-line-no">068</span><span id="line-68"> }</span>
<span class="source-line-no">069</span><span id="line-69"></span>
<span class="source-line-no">070</span><span id="line-70"> @Override</span>
-<span class="source-line-no">071</span><span id="line-71"> protected List<CandidateGenerator> createCandidateGenerators() {</span>
-<span class="source-line-no">072</span><span id="line-72"> List<CandidateGenerator> candidateGenerators = new ArrayList<>(2);</span>
-<span class="source-line-no">073</span><span id="line-73"> candidateGenerators.add(GeneratorFunctionType.LOAD.ordinal(),</span>
-<span class="source-line-no">074</span><span id="line-74"> new CacheAwareSkewnessCandidateGenerator());</span>
-<span class="source-line-no">075</span><span id="line-75"> candidateGenerators.add(GeneratorFunctionType.CACHE_RATIO.ordinal(),</span>
-<span class="source-line-no">076</span><span id="line-76"> new CacheAwareCandidateGenerator());</span>
-<span class="source-line-no">077</span><span id="line-77"> return candidateGenerators;</span>
-<span class="source-line-no">078</span><span id="line-78"> }</span>
-<span class="source-line-no">079</span><span id="line-79"></span>
-<span class="source-line-no">080</span><span id="line-80"> @Override</span>
-<span class="source-line-no">081</span><span id="line-81"> protected List<CostFunction> createCostFunctions(Configuration configuration) {</span>
-<span class="source-line-no">082</span><span id="line-82"> List<CostFunction> costFunctions = new ArrayList<>();</span>
-<span class="source-line-no">083</span><span id="line-83"> addCostFunction(costFunctions, new CacheAwareRegionSkewnessCostFunction(configuration));</span>
-<span class="source-line-no">084</span><span id="line-84"> addCostFunction(costFunctions, new CacheAwareCostFunction(configuration));</span>
-<span class="source-line-no">085</span><span id="line-85"> return costFunctions;</span>
-<span class="source-line-no">086</span><span id="line-86"> }</span>
-<span class="source-line-no">087</span><span id="line-87"></span>
-<span class="source-line-no">088</span><span id="line-88"> private void addCostFunction(List<CostFunction> costFunctions, CostFunction costFunction) {</span>
-<span class="source-line-no">089</span><span id="line-89"> if (costFunction.getMultiplier() > 0) {</span>
-<span class="source-line-no">090</span><span id="line-90"> costFunctions.add(costFunction);</span>
-<span class="source-line-no">091</span><span id="line-91"> }</span>
-<span class="source-line-no">092</span><span id="line-92"> }</span>
-<span class="source-line-no">093</span><span id="line-93"></span>
-<span class="source-line-no">094</span><span id="line-94"> @Override</span>
-<span class="source-line-no">095</span><span id="line-95"> public void updateClusterMetrics(ClusterMetrics clusterMetrics) {</span>
-<span class="source-line-no">096</span><span id="line-96"> this.clusterStatus = clusterMetrics;</span>
-<span class="source-line-no">097</span><span id="line-97"> updateRegionLoad();</span>
-<span class="source-line-no">098</span><span id="line-98"> }</span>
-<span class="source-line-no">099</span><span id="line-99"></span>
-<span class="source-line-no">100</span><span id="line-100"> /**</span>
-<span class="source-line-no">101</span><span id="line-101"> * Collect the amount of region cached for all the regions from all the active region servers.</span>
-<span class="source-line-no">102</span><span id="line-102"> */</span>
-<span class="source-line-no">103</span><span id="line-103"> private void updateRegionLoad() {</span>
-<span class="source-line-no">104</span><span id="line-104"> loads = new HashMap<>();</span>
-<span class="source-line-no">105</span><span id="line-105"> regionCacheRatioOnOldServerMap = new HashMap<>();</span>
-<span class="source-line-no">106</span><span id="line-106"> Map<String, Pair<ServerName, Integer>> regionCacheRatioOnCurrentServerMap = new HashMap<>();</span>
-<span class="source-line-no">107</span><span id="line-107"></span>
-<span class="source-line-no">108</span><span id="line-108"> // Build current region cache statistics</span>
-<span class="source-line-no">109</span><span id="line-109"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">110</span><span id="line-110"> // Create a map of region and the server where it is currently hosted</span>
-<span class="source-line-no">111</span><span id="line-111"> sm.getRegionMetrics().forEach((byte[] regionName, RegionMetrics rm) -> {</span>
-<span class="source-line-no">112</span><span id="line-112"> String regionEncodedName = RegionInfo.encodeRegionName(regionName);</span>
-<span class="source-line-no">113</span><span id="line-113"></span>
-<span class="source-line-no">114</span><span id="line-114"> Deque<BalancerRegionLoad> rload = new ArrayDeque<>();</span>
-<span class="source-line-no">115</span><span id="line-115"></span>
-<span class="source-line-no">116</span><span id="line-116"> // Get the total size of the hFiles in this region</span>
-<span class="source-line-no">117</span><span id="line-117"> int regionSizeMB = (int) rm.getRegionSizeMB().get(Size.Unit.MEGABYTE);</span>
-<span class="source-line-no">118</span><span id="line-118"></span>
-<span class="source-line-no">119</span><span id="line-119"> rload.add(new BalancerRegionLoad(rm));</span>
-<span class="source-line-no">120</span><span id="line-120"> // Maintain a map of region and it's total size. This is needed to calculate the cache</span>
-<span class="source-line-no">121</span><span id="line-121"> // ratios for the regions cached on old region servers</span>
-<span class="source-line-no">122</span><span id="line-122"> regionCacheRatioOnCurrentServerMap.put(regionEncodedName, new Pair<>(sn, regionSizeMB));</span>
-<span class="source-line-no">123</span><span id="line-123"> loads.put(regionEncodedName, rload);</span>
-<span class="source-line-no">124</span><span id="line-124"> });</span>
-<span class="source-line-no">125</span><span id="line-125"> });</span>
-<span class="source-line-no">126</span><span id="line-126"></span>
-<span class="source-line-no">127</span><span id="line-127"> // Build cache statistics for the regions hosted previously on old region servers</span>
-<span class="source-line-no">128</span><span id="line-128"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">129</span><span id="line-129"> // Find if a region was previously hosted on a server other than the one it is currently</span>
-<span class="source-line-no">130</span><span id="line-130"> // hosted on.</span>
-<span class="source-line-no">131</span><span id="line-131"> sm.getRegionCachedInfo().forEach((String regionEncodedName, Integer regionSizeInCache) -> {</span>
-<span class="source-line-no">132</span><span id="line-132"> // If the region is found in regionCacheRatioOnCurrentServerMap, it is currently hosted on</span>
-<span class="source-line-no">133</span><span id="line-133"> // this server</span>
-<span class="source-line-no">134</span><span id="line-134"> if (regionCacheRatioOnCurrentServerMap.containsKey(regionEncodedName)) {</span>
-<span class="source-line-no">135</span><span id="line-135"> ServerName currentServer =</span>
-<span class="source-line-no">136</span><span id="line-136"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getFirst();</span>
-<span class="source-line-no">137</span><span id="line-137"> if (!ServerName.isSameAddress(currentServer, sn)) {</span>
-<span class="source-line-no">138</span><span id="line-138"> int regionSizeMB =</span>
-<span class="source-line-no">139</span><span id="line-139"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getSecond();</span>
-<span class="source-line-no">140</span><span id="line-140"> float regionCacheRatioOnOldServer =</span>
-<span class="source-line-no">141</span><span id="line-141"> regionSizeMB == 0 ? 0.0f : (float) regionSizeInCache / regionSizeMB;</span>
-<span class="source-line-no">142</span><span id="line-142"> regionCacheRatioOnOldServerMap.put(regionEncodedName,</span>
-<span class="source-line-no">143</span><span id="line-143"> new Pair<>(sn, regionCacheRatioOnOldServer));</span>
-<span class="source-line-no">144</span><span id="line-144"> }</span>
-<span class="source-line-no">145</span><span id="line-145"> }</span>
-<span class="source-line-no">146</span><span id="line-146"> });</span>
-<span class="source-line-no">147</span><span id="line-147"> });</span>
-<span class="source-line-no">148</span><span id="line-148"> }</span>
-<span class="source-line-no">149</span><span id="line-149"></span>
-<span class="source-line-no">150</span><span id="line-150"> private RegionInfo getRegionInfoByEncodedName(BalancerClusterState cluster, String regionName) {</span>
-<span class="source-line-no">151</span><span id="line-151"> Optional<RegionInfo> regionInfoOptional =</span>
-<span class="source-line-no">152</span><span id="line-152"> Arrays.stream(cluster.regions).filter((RegionInfo ri) -> {</span>
-<span class="source-line-no">153</span><span id="line-153"> return regionName.equals(ri.getEncodedName());</span>
-<span class="source-line-no">154</span><span id="line-154"> }).findFirst();</span>
-<span class="source-line-no">155</span><span id="line-155"></span>
-<span class="source-line-no">156</span><span id="line-156"> if (regionInfoOptional.isPresent()) {</span>
-<span class="source-line-no">157</span><span id="line-157"> return regionInfoOptional.get();</span>
-<span class="source-line-no">158</span><span id="line-158"> }</span>
-<span class="source-line-no">159</span><span id="line-159"> return null;</span>
-<span class="source-line-no">160</span><span id="line-160"> }</span>
-<span class="source-line-no">161</span><span id="line-161"></span>
-<span class="source-line-no">162</span><span id="line-162"> private class CacheAwareCandidateGenerator extends CandidateGenerator {</span>
-<span class="source-line-no">163</span><span id="line-163"> @Override</span>
-<span class="source-line-no">164</span><span id="line-164"> protected BalanceAction generate(BalancerClusterState cluster) {</span>
-<span class="source-line-no">165</span><span id="line-165"> // Move the regions to the servers they were previously hosted on based on the cache ratio</span>
-<span class="source-line-no">166</span><span id="line-166"> if (</span>
-<span class="source-line-no">167</span><span id="line-167"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">168</span><span id="line-168"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">169</span><span id="line-169"> ) {</span>
-<span class="source-line-no">170</span><span id="line-170"> Map.Entry<String, Pair<ServerName, Float>> regionCacheRatioServerMap =</span>
-<span class="source-line-no">171</span><span id="line-171"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">172</span><span id="line-172"> // Get the server where this region was previously hosted</span>
-<span class="source-line-no">173</span><span id="line-173"> String regionEncodedName = regionCacheRatioServerMap.getKey();</span>
-<span class="source-line-no">174</span><span id="line-174"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">175</span><span id="line-175"> if (regionInfo == null) {</span>
-<span class="source-line-no">176</span><span id="line-176"> LOG.warn("Region {} not found", regionEncodedName);</span>
-<span class="source-line-no">177</span><span id="line-177"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">178</span><span id="line-178"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">179</span><span id="line-179"> }</span>
-<span class="source-line-no">180</span><span id="line-180"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">181</span><span id="line-181"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">182</span><span id="line-182"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">183</span><span id="line-183"> }</span>
-<span class="source-line-no">184</span><span id="line-184"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
-<span class="source-line-no">185</span><span id="line-185"> int oldServerIndex = cluster.serversToIndex</span>
-<span class="source-line-no">186</span><span id="line-186"> .get(regionCacheRatioOnOldServerMap.get(regionEncodedName).getFirst().getAddress());</span>
-<span class="source-line-no">187</span><span id="line-187"> if (oldServerIndex < 0) {</span>
-<span class="source-line-no">188</span><span id="line-188"> LOG.warn("Server previously hosting region {} not found", regionEncodedName);</span>
-<span class="source-line-no">189</span><span id="line-189"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">190</span><span id="line-190"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">191</span><span id="line-191"> }</span>
-<span class="source-line-no">192</span><span id="line-192"></span>
-<span class="source-line-no">193</span><span id="line-193"> float oldRegionCacheRatio =</span>
-<span class="source-line-no">194</span><span id="line-194"> cluster.getOrComputeRegionCacheRatio(regionIndex, oldServerIndex);</span>
-<span class="source-line-no">195</span><span id="line-195"> int currentServerIndex = cluster.regionIndexToServerIndex[regionIndex];</span>
-<span class="source-line-no">196</span><span id="line-196"> float currentRegionCacheRatio =</span>
-<span class="source-line-no">197</span><span id="line-197"> cluster.getOrComputeRegionCacheRatio(regionIndex, currentServerIndex);</span>
-<span class="source-line-no">198</span><span id="line-198"></span>
-<span class="source-line-no">199</span><span id="line-199"> BalanceAction action = generatePlan(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">200</span><span id="line-200"> currentRegionCacheRatio, oldServerIndex, oldRegionCacheRatio);</span>
-<span class="source-line-no">201</span><span id="line-201"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">202</span><span id="line-202"> return action;</span>
-<span class="source-line-no">203</span><span id="line-203"> }</span>
-<span class="source-line-no">204</span><span id="line-204"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">205</span><span id="line-205"> }</span>
-<span class="source-line-no">206</span><span id="line-206"></span>
-<span class="source-line-no">207</span><span id="line-207"> private BalanceAction generatePlan(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">208</span><span id="line-208"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">209</span><span id="line-209"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">210</span><span id="line-210"> return moveRegionToOldServer(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">211</span><span id="line-211"> cacheRatioOnCurrentServer, oldServerIndex, cacheRatioOnOldServer)</span>
-<span class="source-line-no">212</span><span id="line-212"> ? getAction(currentServerIndex, regionIndex, oldServerIndex, -1)</span>
-<span class="source-line-no">213</span><span id="line-213"> : BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">214</span><span id="line-214"> }</span>
-<span class="source-line-no">215</span><span id="line-215"></span>
-<span class="source-line-no">216</span><span id="line-216"> private boolean moveRegionToOldServer(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">217</span><span id="line-217"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">218</span><span id="line-218"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">219</span><span id="line-219"> // Find if the region has already moved by comparing the current server index with the</span>
-<span class="source-line-no">220</span><span id="line-220"> // current server index. This can happen when other candidate generator has moved the region</span>
-<span class="source-line-no">221</span><span id="line-221"> if (currentServerIndex < 0 || oldServerIndex < 0) {</span>
-<span class="source-line-no">222</span><span id="line-222"> return false;</span>
-<span class="source-line-no">223</span><span id="line-223"> }</span>
-<span class="source-line-no">224</span><span id="line-224"></span>
-<span class="source-line-no">225</span><span id="line-225"> DecimalFormat df = new DecimalFormat("#");</span>
-<span class="source-line-no">226</span><span id="line-226"> df.setMaximumFractionDigits(4);</span>
-<span class="source-line-no">227</span><span id="line-227"></span>
-<span class="source-line-no">228</span><span id="line-228"> float cacheRatioDiffThreshold = 0.6f;</span>
-<span class="source-line-no">229</span><span id="line-229"></span>
-<span class="source-line-no">230</span><span id="line-230"> // Conditions for moving the region</span>
-<span class="source-line-no">231</span><span id="line-231"></span>
-<span class="source-line-no">232</span><span id="line-232"> // If the region is fully cached on the old server, move the region back</span>
-<span class="source-line-no">233</span><span id="line-233"> if (cacheRatioOnOldServer == 1.0f) {</span>
-<span class="source-line-no">234</span><span id="line-234"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">235</span><span id="line-235"> LOG.debug("Region {} moved to the old server {} as it is fully cached there",</span>
-<span class="source-line-no">236</span><span id="line-236"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[oldServerIndex]);</span>
-<span class="source-line-no">237</span><span id="line-237"> }</span>
-<span class="source-line-no">238</span><span id="line-238"> return true;</span>
-<span class="source-line-no">239</span><span id="line-239"> }</span>
-<span class="source-line-no">240</span><span id="line-240"></span>
-<span class="source-line-no">241</span><span id="line-241"> // Move the region back to the old server if it is cached equally on both the servers</span>
-<span class="source-line-no">242</span><span id="line-242"> if (cacheRatioOnCurrentServer == cacheRatioOnOldServer) {</span>
-<span class="source-line-no">243</span><span id="line-243"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">244</span><span id="line-244"> LOG.debug(</span>
-<span class="source-line-no">245</span><span id="line-245"> "Region {} moved from {} to {} as the region is cached {} equally on both servers",</span>
-<span class="source-line-no">246</span><span id="line-246"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">247</span><span id="line-247"> cluster.servers[oldServerIndex], df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">248</span><span id="line-248"> }</span>
-<span class="source-line-no">249</span><span id="line-249"> return true;</span>
-<span class="source-line-no">250</span><span id="line-250"> }</span>
-<span class="source-line-no">251</span><span id="line-251"></span>
-<span class="source-line-no">252</span><span id="line-252"> // If the region is not fully cached on either of the servers, move the region back to the</span>
-<span class="source-line-no">253</span><span id="line-253"> // old server if the region cache ratio on the current server is still much less than the old</span>
-<span class="source-line-no">254</span><span id="line-254"> // server</span>
-<span class="source-line-no">255</span><span id="line-255"> if (</span>
-<span class="source-line-no">256</span><span id="line-256"> cacheRatioOnOldServer > 0.0f</span>
-<span class="source-line-no">257</span><span id="line-257"> && cacheRatioOnCurrentServer / cacheRatioOnOldServer < cacheRatioDiffThreshold</span>
-<span class="source-line-no">258</span><span id="line-258"> ) {</span>
-<span class="source-line-no">259</span><span id="line-259"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">260</span><span id="line-260"> LOG.debug(</span>
-<span class="source-line-no">261</span><span id="line-261"> "Region {} moved from {} to {} as region cache ratio {} is better than the current "</span>
-<span class="source-line-no">262</span><span id="line-262"> + "cache ratio {}",</span>
-<span class="source-line-no">263</span><span id="line-263"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">264</span><span id="line-264"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">265</span><span id="line-265"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">266</span><span id="line-266"> }</span>
-<span class="source-line-no">267</span><span id="line-267"> return true;</span>
-<span class="source-line-no">268</span><span id="line-268"> }</span>
-<span class="source-line-no">269</span><span id="line-269"></span>
-<span class="source-line-no">270</span><span id="line-270"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">271</span><span id="line-271"> LOG.debug(</span>
-<span class="source-line-no">272</span><span id="line-272"> "Region {} not moved from {} to {} with current cache ratio {} and old cache ratio {}",</span>
-<span class="source-line-no">273</span><span id="line-273"> cluster.regions[regionIndex], cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">274</span><span id="line-274"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">275</span><span id="line-275"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">276</span><span id="line-276"> }</span>
-<span class="source-line-no">277</span><span id="line-277"> return false;</span>
-<span class="source-line-no">278</span><span id="line-278"> }</span>
-<span class="source-line-no">279</span><span id="line-279"> }</span>
-<span class="source-line-no">280</span><span id="line-280"></span>
-<span class="source-line-no">281</span><span id="line-281"> private class CacheAwareSkewnessCandidateGenerator extends LoadCandidateGenerator {</span>
-<span class="source-line-no">282</span><span id="line-282"> @Override</span>
-<span class="source-line-no">283</span><span id="line-283"> BalanceAction pickRandomRegions(BalancerClusterState cluster, int thisServer, int otherServer) {</span>
-<span class="source-line-no">284</span><span id="line-284"> // First move all the regions which were hosted previously on some other server back to their</span>
-<span class="source-line-no">285</span><span id="line-285"> // old servers</span>
-<span class="source-line-no">286</span><span id="line-286"> if (</span>
-<span class="source-line-no">287</span><span id="line-287"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">288</span><span id="line-288"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">289</span><span id="line-289"> ) {</span>
-<span class="source-line-no">290</span><span id="line-290"> // Get the first region index in the historical cache ratio list</span>
-<span class="source-line-no">291</span><span id="line-291"> Map.Entry<String, Pair<ServerName, Float>> regionEntry =</span>
-<span class="source-line-no">292</span><span id="line-292"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">293</span><span id="line-293"> String regionEncodedName = regionEntry.getKey();</span>
-<span class="source-line-no">294</span><span id="line-294"></span>
-<span class="source-line-no">295</span><span id="line-295"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">296</span><span id="line-296"> if (regionInfo == null) {</span>
-<span class="source-line-no">297</span><span id="line-297"> LOG.warn("Region {} does not exist", regionEncodedName);</span>
-<span class="source-line-no">298</span><span id="line-298"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">299</span><span id="line-299"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">300</span><span id="line-300"> }</span>
-<span class="source-line-no">301</span><span id="line-301"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">302</span><span id="line-302"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">303</span><span id="line-303"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">304</span><span id="line-304"> }</span>
-<span class="source-line-no">305</span><span id="line-305"></span>
-<span class="source-line-no">306</span><span id="line-306"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
-<span class="source-line-no">307</span><span id="line-307"></span>
-<span class="source-line-no">308</span><span id="line-308"> // Get the current host name for this region</span>
-<span class="source-line-no">309</span><span id="line-309"> thisServer = cluster.regionIndexToServerIndex[regionIndex];</span>
-<span class="source-line-no">310</span><span id="line-310"></span>
-<span class="source-line-no">311</span><span id="line-311"> // Get the old server index</span>
-<span class="source-line-no">312</span><span id="line-312"> otherServer = cluster.serversToIndex.get(regionEntry.getValue().getFirst().getAddress());</span>
-<span class="source-line-no">313</span><span id="line-313"></span>
-<span class="source-line-no">314</span><span id="line-314"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">315</span><span id="line-315"></span>
-<span class="source-line-no">316</span><span id="line-316"> if (otherServer < 0) {</span>
-<span class="source-line-no">317</span><span id="line-317"> // The old server has been moved to other host and hence, the region cannot be moved back</span>
-<span class="source-line-no">318</span><span id="line-318"> // to the old server</span>
-<span class="source-line-no">319</span><span id="line-319"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">320</span><span id="line-320"> LOG.debug(</span>
-<span class="source-line-no">321</span><span id="line-321"> "CacheAwareSkewnessCandidateGenerator: Region {} not moved to the old "</span>
-<span class="source-line-no">322</span><span id="line-322"> + "server {} as the server does not exist",</span>
-<span class="source-line-no">323</span><span id="line-323"> regionEncodedName, regionEntry.getValue().getFirst().getHostname());</span>
-<span class="source-line-no">324</span><span id="line-324"> }</span>
-<span class="source-line-no">325</span><span id="line-325"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">326</span><span id="line-326"> }</span>
-<span class="source-line-no">327</span><span id="line-327"></span>
-<span class="source-line-no">328</span><span id="line-328"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">329</span><span id="line-329"> LOG.debug(</span>
-<span class="source-line-no">330</span><span id="line-330"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it "</span>
-<span class="source-line-no">331</span><span id="line-331"> + "was hosted their earlier",</span>
-<span class="source-line-no">332</span><span id="line-332"> regionEncodedName, cluster.servers[thisServer].getHostname(),</span>
-<span class="source-line-no">333</span><span id="line-333"> cluster.servers[otherServer].getHostname());</span>
-<span class="source-line-no">334</span><span id="line-334"> }</span>
-<span class="source-line-no">335</span><span id="line-335"></span>
-<span class="source-line-no">336</span><span id="line-336"> return getAction(thisServer, regionIndex, otherServer, -1);</span>
-<span class="source-line-no">337</span><span id="line-337"> }</span>
-<span class="source-line-no">338</span><span id="line-338"></span>
-<span class="source-line-no">339</span><span id="line-339"> if (thisServer < 0 || otherServer < 0) {</span>
-<span class="source-line-no">340</span><span id="line-340"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">341</span><span id="line-341"> }</span>
-<span class="source-line-no">342</span><span id="line-342"></span>
-<span class="source-line-no">343</span><span id="line-343"> int regionIndexToMove = pickLeastCachedRegion(cluster, thisServer);</span>
-<span class="source-line-no">344</span><span id="line-344"> if (regionIndexToMove < 0) {</span>
-<span class="source-line-no">345</span><span id="line-345"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">346</span><span id="line-346"> LOG.debug("CacheAwareSkewnessCandidateGenerator: No region found for movement");</span>
-<span class="source-line-no">347</span><span id="line-347"> }</span>
-<span class="source-line-no">348</span><span id="line-348"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">349</span><span id="line-349"> }</span>
-<span class="source-line-no">350</span><span id="line-350"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">351</span><span id="line-351"> LOG.debug(</span>
-<span class="source-line-no">352</span><span id="line-352"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it is "</span>
-<span class="source-line-no">353</span><span id="line-353"> + "least cached on current server",</span>
-<span class="source-line-no">354</span><span id="line-354"> cluster.regions[regionIndexToMove].getEncodedName(),</span>
-<span class="source-line-no">355</span><span id="line-355"> cluster.servers[thisServer].getHostname(), cluster.servers[otherServer].getHostname());</span>
-<span class="source-line-no">356</span><span id="line-356"> }</span>
-<span class="source-line-no">357</span><span id="line-357"> return getAction(thisServer, regionIndexToMove, otherServer, -1);</span>
-<span class="source-line-no">358</span><span id="line-358"> }</span>
-<span class="source-line-no">359</span><span id="line-359"></span>
-<span class="source-line-no">360</span><span id="line-360"> private int pickLeastCachedRegion(BalancerClusterState cluster, int thisServer) {</span>
-<span class="source-line-no">361</span><span id="line-361"> float minCacheRatio = Float.MAX_VALUE;</span>
-<span class="source-line-no">362</span><span id="line-362"> int leastCachedRegion = -1;</span>
-<span class="source-line-no">363</span><span id="line-363"> for (int i = 0; i < cluster.regionsPerServer[thisServer].length; i++) {</span>
-<span class="source-line-no">364</span><span id="line-364"> int regionIndex = cluster.regionsPerServer[thisServer][i];</span>
-<span class="source-line-no">365</span><span id="line-365"></span>
-<span class="source-line-no">366</span><span id="line-366"> float cacheRatioOnCurrentServer =</span>
-<span class="source-line-no">367</span><span id="line-367"> cluster.getOrComputeRegionCacheRatio(regionIndex, thisServer);</span>
-<span class="source-line-no">368</span><span id="line-368"> if (cacheRatioOnCurrentServer < minCacheRatio) {</span>
-<span class="source-line-no">369</span><span id="line-369"> minCacheRatio = cacheRatioOnCurrentServer;</span>
-<span class="source-line-no">370</span><span id="line-370"> leastCachedRegion = regionIndex;</span>
-<span class="source-line-no">371</span><span id="line-371"> }</span>
-<span class="source-line-no">372</span><span id="line-372"> }</span>
-<span class="source-line-no">373</span><span id="line-373"> return leastCachedRegion;</span>
-<span class="source-line-no">374</span><span id="line-374"> }</span>
-<span class="source-line-no">375</span><span id="line-375"> }</span>
-<span class="source-line-no">376</span><span id="line-376"></span>
-<span class="source-line-no">377</span><span id="line-377"> static class CacheAwareRegionSkewnessCostFunction extends CostFunction {</span>
-<span class="source-line-no">378</span><span id="line-378"> static final String REGION_COUNT_SKEW_COST_KEY =</span>
-<span class="source-line-no">379</span><span id="line-379"> "hbase.master.balancer.stochastic.regionCountCost";</span>
-<span class="source-line-no">380</span><span id="line-380"> static final float DEFAULT_REGION_COUNT_SKEW_COST = 20;</span>
-<span class="source-line-no">381</span><span id="line-381"> private final DoubleArrayCost cost = new DoubleArrayCost();</span>
-<span class="source-line-no">382</span><span id="line-382"></span>
-<span class="source-line-no">383</span><span id="line-383"> CacheAwareRegionSkewnessCostFunction(Configuration conf) {</span>
-<span class="source-line-no">384</span><span id="line-384"> // Load multiplier should be the greatest as it is the most general way to balance data.</span>
-<span class="source-line-no">385</span><span id="line-385"> this.setMultiplier(conf.getFloat(REGION_COUNT_SKEW_COST_KEY, DEFAULT_REGION_COUNT_SKEW_COST));</span>
-<span class="source-line-no">386</span><span id="line-386"> }</span>
-<span class="source-line-no">387</span><span id="line-387"></span>
-<span class="source-line-no">388</span><span id="line-388"> @Override</span>
-<span class="source-line-no">389</span><span id="line-389"> void prepare(BalancerClusterState cluster) {</span>
-<span class="source-line-no">390</span><span id="line-390"> super.prepare(cluster);</span>
-<span class="source-line-no">391</span><span id="line-391"> cost.prepare(cluster.numServers);</span>
-<span class="source-line-no">392</span><span id="line-392"> cost.applyCostsChange(costs -> {</span>
-<span class="source-line-no">393</span><span id="line-393"> for (int i = 0; i < cluster.numServers; i++) {</span>
-<span class="source-line-no">394</span><span id="line-394"> costs[i] = cluster.regionsPerServer[i].length;</span>
-<span class="source-line-no">395</span><span id="line-395"> }</span>
-<span class="source-line-no">396</span><span id="line-396"> });</span>
-<span class="source-line-no">397</span><span id="line-397"> }</span>
-<span class="source-line-no">398</span><span id="line-398"></span>
-<span class="source-line-no">399</span><span id="line-399"> @Override</span>
-<span class="source-line-no">400</span><span id="line-400"> protected double cost() {</span>
-<span class="source-line-no">401</span><span id="line-401"> return cost.cost();</span>
-<span class="source-line-no">402</span><span id="line-402"> }</span>
-<span class="source-line-no">403</span><span id="line-403"></span>
-<span class="source-line-no">404</span><span id="line-404"> @Override</span>
-<span class="source-line-no">405</span><span id="line-405"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
-<span class="source-line-no">406</span><span id="line-406"> cost.applyCostsChange(costs -> {</span>
-<span class="source-line-no">407</span><span id="line-407"> costs[oldServer] = cluster.regionsPerServer[oldServer].length;</span>
-<span class="source-line-no">408</span><span id="line-408"> costs[newServer] = cluster.regionsPerServer[newServer].length;</span>
-<span class="source-line-no">409</span><span id="line-409"> });</span>
-<span class="source-line-no">410</span><span id="line-410"> }</span>
-<span class="source-line-no">411</span><span id="line-411"></span>
-<span class="source-line-no">412</span><span id="line-412"> public final void updateWeight(double[] weights) {</span>
-<span class="source-line-no">413</span><span id="line-413"> weights[GeneratorFunctionType.LOAD.ordinal()] += cost();</span>
-<span class="source-line-no">414</span><span id="line-414"> }</span>
-<span class="source-line-no">415</span><span id="line-415"> }</span>
-<span class="source-line-no">416</span><span id="line-416"></span>
-<span class="source-line-no">417</span><span id="line-417"> static class CacheAwareCostFunction extends CostFunction {</span>
-<span class="source-line-no">418</span><span id="line-418"> private static final String CACHE_COST_KEY = "hbase.master.balancer.stochastic.cacheCost";</span>
-<span class="source-line-no">419</span><span id="line-419"> private double cacheRatio;</span>
-<span class="source-line-no">420</span><span id="line-420"> private double bestCacheRatio;</span>
-<span class="source-line-no">421</span><span id="line-421"></span>
-<span class="source-line-no">422</span><span id="line-422"> private static final float DEFAULT_CACHE_COST = 20;</span>
+<span class="source-line-no">071</span><span id="line-71"> protected Map<Class<? extends CandidateGenerator>, CandidateGenerator></span>
+<span class="source-line-no">072</span><span id="line-72"> createCandidateGenerators() {</span>
+<span class="source-line-no">073</span><span id="line-73"> Map<Class<? extends CandidateGenerator>, CandidateGenerator> candidateGenerators =</span>
+<span class="source-line-no">074</span><span id="line-74"> new HashMap<>(2);</span>
+<span class="source-line-no">075</span><span id="line-75"> candidateGenerators.put(CacheAwareSkewnessCandidateGenerator.class,</span>
+<span class="source-line-no">076</span><span id="line-76"> new CacheAwareSkewnessCandidateGenerator());</span>
+<span class="source-line-no">077</span><span id="line-77"> candidateGenerators.put(CacheAwareCandidateGenerator.class, new CacheAwareCandidateGenerator());</span>
+<span class="source-line-no">078</span><span id="line-78"> return candidateGenerators;</span>
+<span class="source-line-no">079</span><span id="line-79"> }</span>
+<span class="source-line-no">080</span><span id="line-80"></span>
+<span class="source-line-no">081</span><span id="line-81"> @Override</span>
+<span class="source-line-no">082</span><span id="line-82"> protected List<CostFunction> createCostFunctions(Configuration configuration) {</span>
+<span class="source-line-no">083</span><span id="line-83"> List<CostFunction> costFunctions = new ArrayList<>();</span>
+<span class="source-line-no">084</span><span id="line-84"> addCostFunction(costFunctions, new CacheAwareRegionSkewnessCostFunction(configuration));</span>
+<span class="source-line-no">085</span><span id="line-85"> addCostFunction(costFunctions, new CacheAwareCostFunction(configuration));</span>
+<span class="source-line-no">086</span><span id="line-86"> return costFunctions;</span>
+<span class="source-line-no">087</span><span id="line-87"> }</span>
+<span class="source-line-no">088</span><span id="line-88"></span>
+<span class="source-line-no">089</span><span id="line-89"> private void addCostFunction(List<CostFunction> costFunctions, CostFunction costFunction) {</span>
+<span class="source-line-no">090</span><span id="line-90"> if (costFunction.getMultiplier() > 0) {</span>
+<span class="source-line-no">091</span><span id="line-91"> costFunctions.add(costFunction);</span>
+<span class="source-line-no">092</span><span id="line-92"> }</span>
+<span class="source-line-no">093</span><span id="line-93"> }</span>
+<span class="source-line-no">094</span><span id="line-94"></span>
+<span class="source-line-no">095</span><span id="line-95"> @Override</span>
+<span class="source-line-no">096</span><span id="line-96"> public void updateClusterMetrics(ClusterMetrics clusterMetrics) {</span>
+<span class="source-line-no">097</span><span id="line-97"> this.clusterStatus = clusterMetrics;</span>
+<span class="source-line-no">098</span><span id="line-98"> updateRegionLoad();</span>
+<span class="source-line-no">099</span><span id="line-99"> }</span>
+<span class="source-line-no">100</span><span id="line-100"></span>
+<span class="source-line-no">101</span><span id="line-101"> /**</span>
+<span class="source-line-no">102</span><span id="line-102"> * Collect the amount of region cached for all the regions from all the active region servers.</span>
+<span class="source-line-no">103</span><span id="line-103"> */</span>
+<span class="source-line-no">104</span><span id="line-104"> private void updateRegionLoad() {</span>
+<span class="source-line-no">105</span><span id="line-105"> loads = new HashMap<>();</span>
+<span class="source-line-no">106</span><span id="line-106"> regionCacheRatioOnOldServerMap = new HashMap<>();</span>
+<span class="source-line-no">107</span><span id="line-107"> Map<String, Pair<ServerName, Integer>> regionCacheRatioOnCurrentServerMap = new HashMap<>();</span>
+<span class="source-line-no">108</span><span id="line-108"></span>
+<span class="source-line-no">109</span><span id="line-109"> // Build current region cache statistics</span>
+<span class="source-line-no">110</span><span id="line-110"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
+<span class="source-line-no">111</span><span id="line-111"> // Create a map of region and the server where it is currently hosted</span>
+<span class="source-line-no">112</span><span id="line-112"> sm.getRegionMetrics().forEach((byte[] regionName, RegionMetrics rm) -> {</span>
+<span class="source-line-no">113</span><span id="line-113"> String regionEncodedName = RegionInfo.encodeRegionName(regionName);</span>
+<span class="source-line-no">114</span><span id="line-114"></span>
+<span class="source-line-no">115</span><span id="line-115"> Deque<BalancerRegionLoad> rload = new ArrayDeque<>();</span>
+<span class="source-line-no">116</span><span id="line-116"></span>
+<span class="source-line-no">117</span><span id="line-117"> // Get the total size of the hFiles in this region</span>
+<span class="source-line-no">118</span><span id="line-118"> int regionSizeMB = (int) rm.getRegionSizeMB().get(Size.Unit.MEGABYTE);</span>
+<span class="source-line-no">119</span><span id="line-119"></span>
+<span class="source-line-no">120</span><span id="line-120"> rload.add(new BalancerRegionLoad(rm));</span>
+<span class="source-line-no">121</span><span id="line-121"> // Maintain a map of region and it's total size. This is needed to calculate the cache</span>
+<span class="source-line-no">122</span><span id="line-122"> // ratios for the regions cached on old region servers</span>
+<span class="source-line-no">123</span><span id="line-123"> regionCacheRatioOnCurrentServerMap.put(regionEncodedName, new Pair<>(sn, regionSizeMB));</span>
+<span class="source-line-no">124</span><span id="line-124"> loads.put(regionEncodedName, rload);</span>
+<span class="source-line-no">125</span><span id="line-125"> });</span>
+<span class="source-line-no">126</span><span id="line-126"> });</span>
+<span class="source-line-no">127</span><span id="line-127"></span>
+<span class="source-line-no">128</span><span id="line-128"> // Build cache statistics for the regions hosted previously on old region servers</span>
+<span class="source-line-no">129</span><span id="line-129"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
+<span class="source-line-no">130</span><span id="line-130"> // Find if a region was previously hosted on a server other than the one it is currently</span>
+<span class="source-line-no">131</span><span id="line-131"> // hosted on.</span>
+<span class="source-line-no">132</span><span id="line-132"> sm.getRegionCachedInfo().forEach((String regionEncodedName, Integer regionSizeInCache) -> {</span>
+<span class="source-line-no">133</span><span id="line-133"> // If the region is found in regionCacheRatioOnCurrentServerMap, it is currently hosted on</span>
+<span class="source-line-no">134</span><span id="line-134"> // this server</span>
+<span class="source-line-no">135</span><span id="line-135"> if (regionCacheRatioOnCurrentServerMap.containsKey(regionEncodedName)) {</span>
+<span class="source-line-no">136</span><span id="line-136"> ServerName currentServer =</span>
+<span class="source-line-no">137</span><span id="line-137"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getFirst();</span>
+<span class="source-line-no">138</span><span id="line-138"> if (!ServerName.isSameAddress(currentServer, sn)) {</span>
+<span class="source-line-no">139</span><span id="line-139"> int regionSizeMB =</span>
+<span class="source-line-no">140</span><span id="line-140"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getSecond();</span>
+<span class="source-line-no">141</span><span id="line-141"> float regionCacheRatioOnOldServer =</span>
+<span class="source-line-no">142</span><span id="line-142"> regionSizeMB == 0 ? 0.0f : (float) regionSizeInCache / regionSizeMB;</span>
+<span class="source-line-no">143</span><span id="line-143"> regionCacheRatioOnOldServerMap.put(regionEncodedName,</span>
+<span class="source-line-no">144</span><span id="line-144"> new Pair<>(sn, regionCacheRatioOnOldServer));</span>
+<span class="source-line-no">145</span><span id="line-145"> }</span>
+<span class="source-line-no">146</span><span id="line-146"> }</span>
+<span class="source-line-no">147</span><span id="line-147"> });</span>
+<span class="source-line-no">148</span><span id="line-148"> });</span>
+<span class="source-line-no">149</span><span id="line-149"> }</span>
+<span class="source-line-no">150</span><span id="line-150"></span>
+<span class="source-line-no">151</span><span id="line-151"> private RegionInfo getRegionInfoByEncodedName(BalancerClusterState cluster, String regionName) {</span>
+<span class="source-line-no">152</span><span id="line-152"> Optional<RegionInfo> regionInfoOptional =</span>
+<span class="source-line-no">153</span><span id="line-153"> Arrays.stream(cluster.regions).filter((RegionInfo ri) -> {</span>
+<span class="source-line-no">154</span><span id="line-154"> return regionName.equals(ri.getEncodedName());</span>
+<span class="source-line-no">155</span><span id="line-155"> }).findFirst();</span>
+<span class="source-line-no">156</span><span id="line-156"></span>
+<span class="source-line-no">157</span><span id="line-157"> if (regionInfoOptional.isPresent()) {</span>
+<span class="source-line-no">158</span><span id="line-158"> return regionInfoOptional.get();</span>
+<span class="source-line-no">159</span><span id="line-159"> }</span>
+<span class="source-line-no">160</span><span id="line-160"> return null;</span>
+<span class="source-line-no">161</span><span id="line-161"> }</span>
+<span class="source-line-no">162</span><span id="line-162"></span>
+<span class="source-line-no">163</span><span id="line-163"> private class CacheAwareCandidateGenerator extends CandidateGenerator {</span>
+<span class="source-line-no">164</span><span id="line-164"> @Override</span>
+<span class="source-line-no">165</span><span id="line-165"> protected BalanceAction generate(BalancerClusterState cluster) {</span>
+<span class="source-line-no">166</span><span id="line-166"> // Move the regions to the servers they were previously hosted on based on the cache ratio</span>
+<span class="source-line-no">167</span><span id="line-167"> if (</span>
+<span class="source-line-no">168</span><span id="line-168"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
+<span class="source-line-no">169</span><span id="line-169"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
+<span class="source-line-no">170</span><span id="line-170"> ) {</span>
+<span class="source-line-no">171</span><span id="line-171"> Map.Entry<String, Pair<ServerName, Float>> regionCacheRatioServerMap =</span>
+<span class="source-line-no">172</span><span id="line-172"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
+<span class="source-line-no">173</span><span id="line-173"> // Get the server where this region was previously hosted</span>
+<span class="source-line-no">174</span><span id="line-174"> String regionEncodedName = regionCacheRatioServerMap.getKey();</span>
+<span class="source-line-no">175</span><span id="line-175"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
+<span class="source-line-no">176</span><span id="line-176"> if (regionInfo == null) {</span>
+<span class="source-line-no">177</span><span id="line-177"> LOG.warn("Region {} not found", regionEncodedName);</span>
+<span class="source-line-no">178</span><span id="line-178"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">179</span><span id="line-179"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">180</span><span id="line-180"> }</span>
+<span class="source-line-no">181</span><span id="line-181"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
+<span class="source-line-no">182</span><span id="line-182"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">183</span><span id="line-183"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">184</span><span id="line-184"> }</span>
+<span class="source-line-no">185</span><span id="line-185"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
+<span class="source-line-no">186</span><span id="line-186"> int oldServerIndex = cluster.serversToIndex</span>
+<span class="source-line-no">187</span><span id="line-187"> .get(regionCacheRatioOnOldServerMap.get(regionEncodedName).getFirst().getAddress());</span>
+<span class="source-line-no">188</span><span id="line-188"> if (oldServerIndex < 0) {</span>
+<span class="source-line-no">189</span><span id="line-189"> LOG.warn("Server previously hosting region {} not found", regionEncodedName);</span>
+<span class="source-line-no">190</span><span id="line-190"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">191</span><span id="line-191"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">192</span><span id="line-192"> }</span>
+<span class="source-line-no">193</span><span id="line-193"></span>
+<span class="source-line-no">194</span><span id="line-194"> float oldRegionCacheRatio =</span>
+<span class="source-line-no">195</span><span id="line-195"> cluster.getOrComputeRegionCacheRatio(regionIndex, oldServerIndex);</span>
+<span class="source-line-no">196</span><span id="line-196"> int currentServerIndex = cluster.regionIndexToServerIndex[regionIndex];</span>
+<span class="source-line-no">197</span><span id="line-197"> float currentRegionCacheRatio =</span>
+<span class="source-line-no">198</span><span id="line-198"> cluster.getOrComputeRegionCacheRatio(regionIndex, currentServerIndex);</span>
+<span class="source-line-no">199</span><span id="line-199"></span>
+<span class="source-line-no">200</span><span id="line-200"> BalanceAction action = generatePlan(cluster, regionIndex, currentServerIndex,</span>
+<span class="source-line-no">201</span><span id="line-201"> currentRegionCacheRatio, oldServerIndex, oldRegionCacheRatio);</span>
+<span class="source-line-no">202</span><span id="line-202"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">203</span><span id="line-203"> return action;</span>
+<span class="source-line-no">204</span><span id="line-204"> }</span>
+<span class="source-line-no">205</span><span id="line-205"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">206</span><span id="line-206"> }</span>
+<span class="source-line-no">207</span><span id="line-207"></span>
+<span class="source-line-no">208</span><span id="line-208"> private BalanceAction generatePlan(BalancerClusterState cluster, int regionIndex,</span>
+<span class="source-line-no">209</span><span id="line-209"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
+<span class="source-line-no">210</span><span id="line-210"> float cacheRatioOnOldServer) {</span>
+<span class="source-line-no">211</span><span id="line-211"> return moveRegionToOldServer(cluster, regionIndex, currentServerIndex,</span>
+<span class="source-line-no">212</span><span id="line-212"> cacheRatioOnCurrentServer, oldServerIndex, cacheRatioOnOldServer)</span>
+<span class="source-line-no">213</span><span id="line-213"> ? getAction(currentServerIndex, regionIndex, oldServerIndex, -1)</span>
+<span class="source-line-no">214</span><span id="line-214"> : BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">215</span><span id="line-215"> }</span>
+<span class="source-line-no">216</span><span id="line-216"></span>
+<span class="source-line-no">217</span><span id="line-217"> private boolean moveRegionToOldServer(BalancerClusterState cluster, int regionIndex,</span>
+<span class="source-line-no">218</span><span id="line-218"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
+<span class="source-line-no">219</span><span id="line-219"> float cacheRatioOnOldServer) {</span>
+<span class="source-line-no">220</span><span id="line-220"> // Find if the region has already moved by comparing the current server index with the</span>
+<span class="source-line-no">221</span><span id="line-221"> // current server index. This can happen when other candidate generator has moved the region</span>
+<span class="source-line-no">222</span><span id="line-222"> if (currentServerIndex < 0 || oldServerIndex < 0) {</span>
+<span class="source-line-no">223</span><span id="line-223"> return false;</span>
+<span class="source-line-no">224</span><span id="line-224"> }</span>
+<span class="source-line-no">225</span><span id="line-225"></span>
+<span class="source-line-no">226</span><span id="line-226"> DecimalFormat df = new DecimalFormat("#");</span>
+<span class="source-line-no">227</span><span id="line-227"> df.setMaximumFractionDigits(4);</span>
+<span class="source-line-no">228</span><span id="line-228"></span>
+<span class="source-line-no">229</span><span id="line-229"> float cacheRatioDiffThreshold = 0.6f;</span>
+<span class="source-line-no">230</span><span id="line-230"></span>
+<span class="source-line-no">231</span><span id="line-231"> // Conditions for moving the region</span>
+<span class="source-line-no">232</span><span id="line-232"></span>
+<span class="source-line-no">233</span><span id="line-233"> // If the region is fully cached on the old server, move the region back</span>
+<span class="source-line-no">234</span><span id="line-234"> if (cacheRatioOnOldServer == 1.0f) {</span>
+<span class="source-line-no">235</span><span id="line-235"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">236</span><span id="line-236"> LOG.debug("Region {} moved to the old server {} as it is fully cached there",</span>
+<span class="source-line-no">237</span><span id="line-237"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[oldServerIndex]);</span>
+<span class="source-line-no">238</span><span id="line-238"> }</span>
+<span class="source-line-no">239</span><span id="line-239"> return true;</span>
+<span class="source-line-no">240</span><span id="line-240"> }</span>
+<span class="source-line-no">241</span><span id="line-241"></span>
+<span class="source-line-no">242</span><span id="line-242"> // Move the region back to the old server if it is cached equally on both the servers</span>
+<span class="source-line-no">243</span><span id="line-243"> if (cacheRatioOnCurrentServer == cacheRatioOnOldServer) {</span>
+<span class="source-line-no">244</span><span id="line-244"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">245</span><span id="line-245"> LOG.debug(</span>
+<span class="source-line-no">246</span><span id="line-246"> "Region {} moved from {} to {} as the region is cached {} equally on both servers",</span>
+<span class="source-line-no">247</span><span id="line-247"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">248</span><span id="line-248"> cluster.servers[oldServerIndex], df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">249</span><span id="line-249"> }</span>
+<span class="source-line-no">250</span><span id="line-250"> return true;</span>
+<span class="source-line-no">251</span><span id="line-251"> }</span>
+<span class="source-line-no">252</span><span id="line-252"></span>
+<span class="source-line-no">253</span><span id="line-253"> // If the region is not fully cached on either of the servers, move the region back to the</span>
+<span class="source-line-no">254</span><span id="line-254"> // old server if the region cache ratio on the current server is still much less than the old</span>
+<span class="source-line-no">255</span><span id="line-255"> // server</span>
+<span class="source-line-no">256</span><span id="line-256"> if (</span>
+<span class="source-line-no">257</span><span id="line-257"> cacheRatioOnOldServer > 0.0f</span>
+<span class="source-line-no">258</span><span id="line-258"> && cacheRatioOnCurrentServer / cacheRatioOnOldServer < cacheRatioDiffThreshold</span>
+<span class="source-line-no">259</span><span id="line-259"> ) {</span>
+<span class="source-line-no">260</span><span id="line-260"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">261</span><span id="line-261"> LOG.debug(</span>
+<span class="source-line-no">262</span><span id="line-262"> "Region {} moved from {} to {} as region cache ratio {} is better than the current "</span>
+<span class="source-line-no">263</span><span id="line-263"> + "cache ratio {}",</span>
+<span class="source-line-no">264</span><span id="line-264"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">265</span><span id="line-265"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
+<span class="source-line-no">266</span><span id="line-266"> df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">267</span><span id="line-267"> }</span>
+<span class="source-line-no">268</span><span id="line-268"> return true;</span>
+<span class="source-line-no">269</span><span id="line-269"> }</span>
+<span class="source-line-no">270</span><span id="line-270"></span>
+<span class="source-line-no">271</span><span id="line-271"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">272</span><span id="line-272"> LOG.debug(</span>
+<span class="source-line-no">273</span><span id="line-273"> "Region {} not moved from {} to {} with current cache ratio {} and old cache ratio {}",</span>
+<span class="source-line-no">274</span><span id="line-274"> cluster.regions[regionIndex], cluster.servers[currentServerIndex],</span>
+<span class="source-line-no">275</span><span id="line-275"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
+<span class="source-line-no">276</span><span id="line-276"> df.format(cacheRatioOnCurrentServer));</span>
+<span class="source-line-no">277</span><span id="line-277"> }</span>
+<span class="source-line-no">278</span><span id="line-278"> return false;</span>
+<span class="source-line-no">279</span><span id="line-279"> }</span>
+<span class="source-line-no">280</span><span id="line-280"> }</span>
+<span class="source-line-no">281</span><span id="line-281"></span>
+<span class="source-line-no">282</span><span id="line-282"> private class CacheAwareSkewnessCandidateGenerator extends LoadCandidateGenerator {</span>
+<span class="source-line-no">283</span><span id="line-283"> @Override</span>
+<span class="source-line-no">284</span><span id="line-284"> BalanceAction pickRandomRegions(BalancerClusterState cluster, int thisServer, int otherServer) {</span>
+<span class="source-line-no">285</span><span id="line-285"> // First move all the regions which were hosted previously on some other server back to their</span>
+<span class="source-line-no">286</span><span id="line-286"> // old servers</span>
+<span class="source-line-no">287</span><span id="line-287"> if (</span>
+<span class="source-line-no">288</span><span id="line-288"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
+<span class="source-line-no">289</span><span id="line-289"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
+<span class="source-line-no">290</span><span id="line-290"> ) {</span>
+<span class="source-line-no">291</span><span id="line-291"> // Get the first region index in the historical cache ratio list</span>
+<span class="source-line-no">292</span><span id="line-292"> Map.Entry<String, Pair<ServerName, Float>> regionEntry =</span>
+<span class="source-line-no">293</span><span id="line-293"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
+<span class="source-line-no">294</span><span id="line-294"> String regionEncodedName = regionEntry.getKey();</span>
+<span class="source-line-no">295</span><span id="line-295"></span>
+<span class="source-line-no">296</span><span id="line-296"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
+<span class="source-line-no">297</span><span id="line-297"> if (regionInfo == null) {</span>
+<span class="source-line-no">298</span><span id="line-298"> LOG.warn("Region {} does not exist", regionEncodedName);</span>
+<span class="source-line-no">299</span><span id="line-299"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">300</span><span id="line-300"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">301</span><span id="line-301"> }</span>
+<span class="source-line-no">302</span><span id="line-302"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
+<span class="source-line-no">303</span><span id="line-303"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">304</span><span id="line-304"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">305</span><span id="line-305"> }</span>
+<span class="source-line-no">306</span><span id="line-306"></span>
+<span class="source-line-no">307</span><span id="line-307"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
+<span class="source-line-no">308</span><span id="line-308"></span>
+<span class="source-line-no">309</span><span id="line-309"> // Get the current host name for this region</span>
+<span class="source-line-no">310</span><span id="line-310"> thisServer = cluster.regionIndexToServerIndex[regionIndex];</span>
+<span class="source-line-no">311</span><span id="line-311"></span>
+<span class="source-line-no">312</span><span id="line-312"> // Get the old server index</span>
+<span class="source-line-no">313</span><span id="line-313"> otherServer = cluster.serversToIndex.get(regionEntry.getValue().getFirst().getAddress());</span>
+<span class="source-line-no">314</span><span id="line-314"></span>
+<span class="source-line-no">315</span><span id="line-315"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
+<span class="source-line-no">316</span><span id="line-316"></span>
+<span class="source-line-no">317</span><span id="line-317"> if (otherServer < 0) {</span>
+<span class="source-line-no">318</span><span id="line-318"> // The old server has been moved to other host and hence, the region cannot be moved back</span>
+<span class="source-line-no">319</span><span id="line-319"> // to the old server</span>
+<span class="source-line-no">320</span><span id="line-320"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">321</span><span id="line-321"> LOG.debug(</span>
+<span class="source-line-no">322</span><span id="line-322"> "CacheAwareSkewnessCandidateGenerator: Region {} not moved to the old "</span>
+<span class="source-line-no">323</span><span id="line-323"> + "server {} as the server does not exist",</span>
+<span class="source-line-no">324</span><span id="line-324"> regionEncodedName, regionEntry.getValue().getFirst().getHostname());</span>
+<span class="source-line-no">325</span><span id="line-325"> }</span>
+<span class="source-line-no">326</span><span id="line-326"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">327</span><span id="line-327"> }</span>
+<span class="source-line-no">328</span><span id="line-328"></span>
+<span class="source-line-no">329</span><span id="line-329"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">330</span><span id="line-330"> LOG.debug(</span>
+<span class="source-line-no">331</span><span id="line-331"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it "</span>
+<span class="source-line-no">332</span><span id="line-332"> + "was hosted their earlier",</span>
+<span class="source-line-no">333</span><span id="line-333"> regionEncodedName, cluster.servers[thisServer].getHostname(),</span>
+<span class="source-line-no">334</span><span id="line-334"> cluster.servers[otherServer].getHostname());</span>
+<span class="source-line-no">335</span><span id="line-335"> }</span>
+<span class="source-line-no">336</span><span id="line-336"></span>
+<span class="source-line-no">337</span><span id="line-337"> return getAction(thisServer, regionIndex, otherServer, -1);</span>
+<span class="source-line-no">338</span><span id="line-338"> }</span>
+<span class="source-line-no">339</span><span id="line-339"></span>
+<span class="source-line-no">340</span><span id="line-340"> if (thisServer < 0 || otherServer < 0) {</span>
+<span class="source-line-no">341</span><span id="line-341"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">342</span><span id="line-342"> }</span>
+<span class="source-line-no">343</span><span id="line-343"></span>
+<span class="source-line-no">344</span><span id="line-344"> int regionIndexToMove = pickLeastCachedRegion(cluster, thisServer);</span>
+<span class="source-line-no">345</span><span id="line-345"> if (regionIndexToMove < 0) {</span>
+<span class="source-line-no">346</span><span id="line-346"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">347</span><span id="line-347"> LOG.debug("CacheAwareSkewnessCandidateGenerator: No region found for movement");</span>
+<span class="source-line-no">348</span><span id="line-348"> }</span>
+<span class="source-line-no">349</span><span id="line-349"> return BalanceAction.NULL_ACTION;</span>
+<span class="source-line-no">350</span><span id="line-350"> }</span>
+<span class="source-line-no">351</span><span id="line-351"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">352</span><span id="line-352"> LOG.debug(</span>
+<span class="source-line-no">353</span><span id="line-353"> "CacheAwareSkewnessCandidateGenerator: Region {} moved from {} to {} as it is "</span>
+<span class="source-line-no">354</span><span id="line-354"> + "least cached on current server",</span>
+<span class="source-line-no">355</span><span id="line-355"> cluster.regions[regionIndexToMove].getEncodedName(),</span>
+<span class="source-line-no">356</span><span id="line-356"> cluster.servers[thisServer].getHostname(), cluster.servers[otherServer].getHostname());</span>
+<span class="source-line-no">357</span><span id="line-357"> }</span>
+<span class="source-line-no">358</span><span id="line-358"> return getAction(thisServer, regionIndexToMove, otherServer, -1);</span>
+<span class="source-line-no">359</span><span id="line-359"> }</span>
+<span class="source-line-no">360</span><span id="line-360"></span>
+<span class="source-line-no">361</span><span id="line-361"> private int pickLeastCachedRegion(BalancerClusterState cluster, int thisServer) {</span>
+<span class="source-line-no">362</span><span id="line-362"> float minCacheRatio = Float.MAX_VALUE;</span>
+<span class="source-line-no">363</span><span id="line-363"> int leastCachedRegion = -1;</span>
+<span class="source-line-no">364</span><span id="line-364"> for (int i = 0; i < cluster.regionsPerServer[thisServer].length; i++) {</span>
+<span class="source-line-no">365</span><span id="line-365"> int regionIndex = cluster.regionsPerServer[thisServer][i];</span>
+<span class="source-line-no">366</span><span id="line-366"></span>
+<span class="source-line-no">367</span><span id="line-367"> float cacheRatioOnCurrentServer =</span>
+<span class="source-line-no">368</span><span id="line-368"> cluster.getOrComputeRegionCacheRatio(regionIndex, thisServer);</span>
+<span class="source-line-no">369</span><span id="line-369"> if (cacheRatioOnCurrentServer < minCacheRatio) {</span>
+<span class="source-line-no">370</span><span id="line-370"> minCacheRatio = cacheRatioOnCurrentServer;</span>
+<span class="source-line-no">371</span><span id="line-371"> leastCachedRegion = regionIndex;</span>
+<span class="source-line-no">372</span><span id="line-372"> }</span>
+<span class="source-line-no">373</span><span id="line-373"> }</span>
+<span class="source-line-no">374</span><span id="line-374"> return leastCachedRegion;</span>
+<span class="source-line-no">375</span><span id="line-375"> }</span>
+<span class="source-line-no">376</span><span id="line-376"> }</span>
+<span class="source-line-no">377</span><span id="line-377"></span>
+<span class="source-line-no">378</span><span id="line-378"> static class CacheAwareRegionSkewnessCostFunction extends CostFunction {</span>
+<span class="source-line-no">379</span><span id="line-379"> static final String REGION_COUNT_SKEW_COST_KEY =</span>
+<span class="source-line-no">380</span><span id="line-380"> "hbase.master.balancer.stochastic.regionCountCost";</span>
+<span class="source-line-no">381</span><span id="line-381"> static final float DEFAULT_REGION_COUNT_SKEW_COST = 20;</span>
+<span class="source-line-no">382</span><span id="line-382"> private final DoubleArrayCost cost = new DoubleArrayCost();</span>
+<span class="source-line-no">383</span><span id="line-383"></span>
+<span class="source-line-no">384</span><span id="line-384"> CacheAwareRegionSkewnessCostFunction(Configuration conf) {</span>
+<span class="source-line-no">385</span><span id="line-385"> // Load multiplier should be the greatest as it is the most general way to balance data.</span>
+<span class="source-line-no">386</span><span id="line-386"> this.setMultiplier(conf.getFloat(REGION_COUNT_SKEW_COST_KEY, DEFAULT_REGION_COUNT_SKEW_COST));</span>
+<span class="source-line-no">387</span><span id="line-387"> }</span>
+<span class="source-line-no">388</span><span id="line-388"></span>
+<span class="source-line-no">389</span><span id="line-389"> @Override</span>
+<span class="source-line-no">390</span><span id="line-390"> void prepare(BalancerClusterState cluster) {</span>
+<span class="source-line-no">391</span><span id="line-391"> super.prepare(cluster);</span>
+<span class="source-line-no">392</span><span id="line-392"> cost.prepare(cluster.numServers);</span>
+<span class="source-line-no">393</span><span id="line-393"> cost.applyCostsChange(costs -> {</span>
+<span class="source-line-no">394</span><span id="line-394"> for (int i = 0; i < cluster.numServers; i++) {</span>
+<span class="source-line-no">395</span><span id="line-395"> costs[i] = cluster.regionsPerServer[i].length;</span>
+<span class="source-line-no">396</span><span id="line-396"> }</span>
+<span class="source-line-no">397</span><span id="line-397"> });</span>
+<span class="source-line-no">398</span><span id="line-398"> }</span>
+<span class="source-line-no">399</span><span id="line-399"></span>
+<span class="source-line-no">400</span><span id="line-400"> @Override</span>
+<span class="source-line-no">401</span><span id="line-401"> protected double cost() {</span>
+<span class="source-line-no">402</span><span id="line-402"> return cost.cost();</span>
+<span class="source-line-no">403</span><span id="line-403"> }</span>
+<span class="source-line-no">404</span><span id="line-404"></span>
+<span class="source-line-no">405</span><span id="line-405"> @Override</span>
+<span class="source-line-no">406</span><span id="line-406"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
+<span class="source-line-no">407</span><span id="line-407"> cost.applyCostsChange(costs -> {</span>
+<span class="source-line-no">408</span><span id="line-408"> costs[oldServer] = cluster.regionsPerServer[oldServer].length;</span>
+<span class="source-line-no">409</span><span id="line-409"> costs[newServer] = cluster.regionsPerServer[newServer].length;</span>
+<span class="source-line-no">410</span><span id="line-410"> });</span>
+<span class="source-line-no">411</span><span id="line-411"> }</span>
+<span class="source-line-no">412</span><span id="line-412"></span>
+<span class="source-line-no">413</span><span id="line-413"> @Override</span>
+<span class="source-line-no">414</span><span id="line-414"> public final void updateWeight(Map<Class<? extends CandidateGenerator>, Double> weights) {</span>
+<span class="source-line-no">415</span><span id="line-415"> weights.merge(LoadCandidateGenerator.class, cost(), Double::sum);</span>
+<span class="source-line-no">416</span><span id="line-416"> }</span>
+<span class="source-line-no">417</span><span id="line-417"> }</span>
+<span class="source-line-no">418</span><span id="line-418"></span>
+<span class="source-line-no">419</span><span id="line-419"> static class CacheAwareCostFunction extends CostFunction {</span>
+<span class="source-line-no">420</span><span id="line-420"> private static final String CACHE_COST_KEY = "hbase.master.balancer.stochastic.cacheCost";</span>
+<span class="source-line-no">421</span><span id="line-421"> private double cacheRatio;</span>
+<span class="source-line-no">422</span><span id="line-422"> private double bestCacheRatio;</span>
<span class="source-line-no">423</span><span id="line-423"></span>
-<span class="source-line-no">424</span><span id="line-424"> CacheAwareCostFunction(Configuration conf) {</span>
-<span class="source-line-no">425</span><span id="line-425"> boolean isPersistentCache = conf.get(BUCKET_CACHE_PERSISTENT_PATH_KEY) != null;</span>
-<span class="source-line-no">426</span><span id="line-426"> // Disable the CacheAwareCostFunction if the cached file list persistence is not enabled</span>
-<span class="source-line-no">427</span><span id="line-427"> this.setMultiplier(</span>
-<span class="source-line-no">428</span><span id="line-428"> !isPersistentCache ? 0.0f : conf.getFloat(CACHE_COST_KEY, DEFAULT_CACHE_COST));</span>
-<span class="source-line-no">429</span><span id="line-429"> bestCacheRatio = 0.0;</span>
-<span class="source-line-no">430</span><span id="line-430"> cacheRatio = 0.0;</span>
-<span class="source-line-no">431</span><span id="line-431"> }</span>
-<span class="source-line-no">432</span><span id="line-432"></span>
-<span class="source-line-no">433</span><span id="line-433"> @Override</span>
-<span class="source-line-no">434</span><span id="line-434"> void prepare(BalancerClusterState cluster) {</span>
-<span class="source-line-no">435</span><span id="line-435"> super.prepare(cluster);</span>
-<span class="source-line-no">436</span><span id="line-436"> cacheRatio = 0.0;</span>
-<span class="source-line-no">437</span><span id="line-437"> bestCacheRatio = 0.0;</span>
-<span class="source-line-no">438</span><span id="line-438"></span>
-<span class="source-line-no">439</span><span id="line-439"> for (int region = 0; region < cluster.numRegions; region++) {</span>
-<span class="source-line-no">440</span><span id="line-440"> cacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
-<span class="source-line-no">441</span><span id="line-441"> cluster.regionIndexToServerIndex[region]);</span>
-<span class="source-line-no">442</span><span id="line-442"> bestCacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
-<span class="source-line-no">443</span><span id="line-443"> getServerWithBestCacheRatioForRegion(region));</span>
-<span class="source-line-no">444</span><span id="line-444"> }</span>
-<span class="source-line-no">445</span><span id="line-445"></span>
-<span class="source-line-no">446</span><span id="line-446"> cacheRatio = bestCacheRatio == 0 ? 1.0 : cacheRatio / bestCacheRatio;</span>
-<span class="source-line-no">447</span><span id="line-447"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">448</span><span id="line-448"> LOG.debug("CacheAwareCostFunction: Cost: {}", 1 - cacheRatio);</span>
-<span class="source-line-no">449</span><span id="line-449"> }</span>
-<span class="source-line-no">450</span><span id="line-450"> }</span>
-<span class="source-line-no">451</span><span id="line-451"></span>
-<span class="source-line-no">452</span><span id="line-452"> @Override</span>
-<span class="source-line-no">453</span><span id="line-453"> protected double cost() {</span>
-<span class="source-line-no">454</span><span id="line-454"> return scale(0, 1, 1 - cacheRatio);</span>
-<span class="source-line-no">455</span><span id="line-455"> }</span>
-<span class="source-line-no">456</span><span id="line-456"></span>
-<span class="source-line-no">457</span><span id="line-457"> @Override</span>
-<span class="source-line-no">458</span><span id="line-458"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
-<span class="source-line-no">459</span><span id="line-459"> double regionCacheRatioOnOldServer =</span>
-<span class="source-line-no">460</span><span id="line-460"> cluster.getOrComputeWeightedRegionCacheRatio(region, oldServer);</span>
-<span class="source-line-no">461</span><span id="line-461"> double regionCacheRatioOnNewServer =</span>
-<span class="source-line-no">462</span><span id="line-462"> cluster.getOrComputeWeightedRegionCacheRatio(region, newServer);</span>
-<span class="source-line-no">463</span><span id="line-463"> double cacheRatioDiff = regionCacheRatioOnNewServer - regionCacheRatioOnOldServer;</span>
-<span class="source-line-no">464</span><span id="line-464"> double normalizedDelta = bestCacheRatio == 0.0 ? 0.0 : cacheRatioDiff / bestCacheRatio;</span>
-<span class="source-line-no">465</span><span id="line-465"> cacheRatio += normalizedDelta;</span>
-<span class="source-line-no">466</span><span id="line-466"> if (LOG.isDebugEnabled() && (cacheRatio < 0.0 || cacheRatio > 1.0)) {</span>
-<span class="source-line-no">467</span><span id="line-467"> LOG.debug(</span>
-<span class="source-line-no">468</span><span id="line-468"> "CacheAwareCostFunction:regionMoved:region:{}:from:{}:to:{}:regionCacheRatioOnOldServer:{}:"</span>
-<span class="source-line-no">469</span><span id="line-469"> + "regionCacheRatioOnNewServer:{}:bestRegionCacheRatio:{}:cacheRatio:{}",</span>
-<span class="source-line-no">470</span><span id="line-470"> cluster.regions[region].getEncodedName(), cluster.servers[oldServer].getHostname(),</span>
-<span class="source-line-no">471</span><span id="line-471"> cluster.servers[newServer].getHostname(), regionCacheRatioOnOldServer,</span>
-<span class="source-line-no">472</span><span id="line-472"> regionCacheRatioOnNewServer, bestCacheRatio, cacheRatio);</span>
-<span class="source-line-no">473</span><span id="line-473"> }</span>
-<span class="source-line-no">474</span><span id="line-474"> }</span>
-<span class="source-line-no">475</span><span id="line-475"></span>
-<span class="source-line-no">476</span><span id="line-476"> private int getServerWithBestCacheRatioForRegion(int region) {</span>
-<span class="source-line-no">477</span><span id="line-477"> return cluster.getOrComputeServerWithBestRegionCachedRatio()[region];</span>
-<span class="source-line-no">478</span><span id="line-478"> }</span>
-<span class="source-line-no">479</span><span id="line-479"></span>
-<span class="source-line-no">480</span><span id="line-480"> @Override</span>
-<span class="source-line-no">481</span><span id="line-481"> public final void updateWeight(double[] weights) {</span>
-<span class="source-line-no">482</span><span id="line-482"> weights[GeneratorFunctionType.CACHE_RATIO.ordinal()] += cost();</span>
-<span class="source-line-no">483</span><span id="line-483"> }</span>
-<span class="source-line-no">484</span><span id="line-484"> }</span>
-<span class="source-line-no">485</span><span id="line-485">}</span>
+<span class="source-line-no">424</span><span id="line-424"> private static final float DEFAULT_CACHE_COST = 20;</span>
+<span class="source-line-no">425</span><span id="line-425"></span>
+<span class="source-line-no">426</span><span id="line-426"> CacheAwareCostFunction(Configuration conf) {</span>
+<span class="source-line-no">427</span><span id="line-427"> boolean isPersistentCache = conf.get(BUCKET_CACHE_PERSISTENT_PATH_KEY) != null;</span>
+<span class="source-line-no">428</span><span id="line-428"> // Disable the CacheAwareCostFunction if the cached file list persistence is not enabled</span>
+<span class="source-line-no">429</span><span id="line-429"> this.setMultiplier(</span>
+<span class="source-line-no">430</span><span id="line-430"> !isPersistentCache ? 0.0f : conf.getFloat(CACHE_COST_KEY, DEFAULT_CACHE_COST));</span>
+<span class="source-line-no">431</span><span id="line-431"> bestCacheRatio = 0.0;</span>
+<span class="source-line-no">432</span><span id="line-432"> cacheRatio = 0.0;</span>
+<span class="source-line-no">433</span><span id="line-433"> }</span>
+<span class="source-line-no">434</span><span id="line-434"></span>
+<span class="source-line-no">435</span><span id="line-435"> @Override</span>
+<span class="source-line-no">436</span><span id="line-436"> void prepare(BalancerClusterState cluster) {</span>
+<span class="source-line-no">437</span><span id="line-437"> super.prepare(cluster);</span>
+<span class="source-line-no">438</span><span id="line-438"> cacheRatio = 0.0;</span>
+<span class="source-line-no">439</span><span id="line-439"> bestCacheRatio = 0.0;</span>
+<span class="source-line-no">440</span><span id="line-440"></span>
+<span class="source-line-no">441</span><span id="line-441"> for (int region = 0; region < cluster.numRegions; region++) {</span>
+<span class="source-line-no">442</span><span id="line-442"> cacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
+<span class="source-line-no">443</span><span id="line-443"> cluster.regionIndexToServerIndex[region]);</span>
+<span class="source-line-no">444</span><span id="line-444"> bestCacheRatio += cluster.getOrComputeWeightedRegionCacheRatio(region,</span>
+<span class="source-line-no">445</span><span id="line-445"> getServerWithBestCacheRatioForRegion(region));</span>
+<span class="source-line-no">446</span><span id="line-446"> }</span>
+<span class="source-line-no">447</span><span id="line-447"></span>
+<span class="source-line-no">448</span><span id="line-448"> cacheRatio = bestCacheRatio == 0 ? 1.0 : cacheRatio / bestCacheRatio;</span>
+<span class="source-line-no">449</span><span id="line-449"> if (LOG.isDebugEnabled()) {</span>
+<span class="source-line-no">450</span><span id="line-450"> LOG.debug("CacheAwareCostFunction: Cost: {}", 1 - cacheRatio);</span>
+<span class="source-line-no">451</span><span id="line-451"> }</span>
+<span class="source-line-no">452</span><span id="line-452"> }</span>
+<span class="source-line-no">453</span><span id="line-453"></span>
+<span class="source-line-no">454</span><span id="line-454"> @Override</span>
+<span class="source-line-no">455</span><span id="line-455"> protected double cost() {</span>
+<span class="source-line-no">456</span><span id="line-456"> return scale(0, 1, 1 - cacheRatio);</span>
+<span class="source-line-no">457</span><span id="line-457"> }</span>
+<span class="source-line-no">458</span><span id="line-458"></span>
+<span class="source-line-no">459</span><span id="line-459"> @Override</span>
+<span class="source-line-no">460</span><span id="line-460"> protected void regionMoved(int region, int oldServer, int newServer) {</span>
+<span class="source-line-no">461</span><span id="line-461"> double regionCacheRatioOnOldServer =</span>
+<span class="source-line-no">462</span><span id="line-462"> cluster.getOrComputeWeightedRegionCacheRatio(region, oldServer);</span>
+<span class="source-line-no">463</span><span id="line-463"> double regionCacheRatioOnNewServer =</span>
+<span class="source-line-no">464</span><span id="line-464"> cluster.getOrComputeWeightedRegionCacheRatio(region, newServer);</span>
+<span class="source-line-no">465</span><span id="line-465"> double cacheRatioDiff = regionCacheRatioOnNewServer - regionCacheRatioOnOldServer;</span>
+<span class="source-line-no">466</span><span id="line-466"> double normalizedDelta = bestCacheRatio == 0.0 ? 0.0 : cacheRatioDiff / bestCacheRatio;</span>
+<span class="source-line-no">467</span><span id="line-467"> cacheRatio += normalizedDelta;</span>
+<span class="source-line-no">468</span><span id="line-468"> if (LOG.isDebugEnabled() && (cacheRatio < 0.0 || cacheRatio > 1.0)) {</span>
+<span class="source-line-no">469</span><span id="line-469"> LOG.debug(</span>
+<span class="source-line-no">470</span><span id="line-470"> "CacheAwareCostFunction:regionMoved:region:{}:from:{}:to:{}:regionCacheRatioOnOldServer:{}:"</span>
+<span class="source-line-no">471</span><span id="line-471"> + "regionCacheRatioOnNewServer:{}:bestRegionCacheRatio:{}:cacheRatio:{}",</span>
+<span class="source-line-no">472</span><span id="line-472"> cluster.regions[region].getEncodedName(), cluster.servers[oldServer].getHostname(),</span>
+<span class="source-line-no">473</span><span id="line-473"> cluster.servers[newServer].getHostname(), regionCacheRatioOnOldServer,</span>
+<span class="source-line-no">474</span><span id="line-474"> regionCacheRatioOnNewServer, bestCacheRatio, cacheRatio);</span>
+<span class="source-line-no">475</span><span id="line-475"> }</span>
+<span class="source-line-no">476</span><span id="line-476"> }</span>
+<span class="source-line-no">477</span><span id="line-477"></span>
+<span class="source-line-no">478</span><span id="line-478"> private int getServerWithBestCacheRatioForRegion(int region) {</span>
+<span class="source-line-no">479</span><span id="line-479"> return cluster.getOrComputeServerWithBestRegionCachedRatio()[region];</span>
+<span class="source-line-no">480</span><span id="line-480"> }</span>
+<span class="source-line-no">481</span><span id="line-481"></span>
+<span class="source-line-no">482</span><span id="line-482"> @Override</span>
+<span class="source-line-no">483</span><span id="line-483"> public void updateWeight(Map<Class<? extends CandidateGenerator>, Double> weights) {</span>
+<span class="source-line-no">484</span><span id="line-484"> weights.merge(LoadCandidateGenerator.class, cost(), Double::sum);</span>
+<span class="source-line-no">485</span><span id="line-485"> }</span>
+<span class="source-line-no">486</span><span id="line-486"> }</span>
+<span class="source-line-no">487</span><span id="line-487">}</span>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
index 537a4f4dcb8..58b4b53f4fe 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/CacheAwareLoadBalancer.CacheAwareRegionSkewnessCostFunction.html
@@ -81,421 +81,423 @@
<span class="source-line-no">068</span><span id="line-68"> }</span>
<span class="source-line-no">069</span><span id="line-69"></span>
<span class="source-line-no">070</span><span id="line-70"> @Override</span>
-<span class="source-line-no">071</span><span id="line-71"> protected List<CandidateGenerator> createCandidateGenerators() {</span>
-<span class="source-line-no">072</span><span id="line-72"> List<CandidateGenerator> candidateGenerators = new ArrayList<>(2);</span>
-<span class="source-line-no">073</span><span id="line-73"> candidateGenerators.add(GeneratorFunctionType.LOAD.ordinal(),</span>
-<span class="source-line-no">074</span><span id="line-74"> new CacheAwareSkewnessCandidateGenerator());</span>
-<span class="source-line-no">075</span><span id="line-75"> candidateGenerators.add(GeneratorFunctionType.CACHE_RATIO.ordinal(),</span>
-<span class="source-line-no">076</span><span id="line-76"> new CacheAwareCandidateGenerator());</span>
-<span class="source-line-no">077</span><span id="line-77"> return candidateGenerators;</span>
-<span class="source-line-no">078</span><span id="line-78"> }</span>
-<span class="source-line-no">079</span><span id="line-79"></span>
-<span class="source-line-no">080</span><span id="line-80"> @Override</span>
-<span class="source-line-no">081</span><span id="line-81"> protected List<CostFunction> createCostFunctions(Configuration configuration) {</span>
-<span class="source-line-no">082</span><span id="line-82"> List<CostFunction> costFunctions = new ArrayList<>();</span>
-<span class="source-line-no">083</span><span id="line-83"> addCostFunction(costFunctions, new CacheAwareRegionSkewnessCostFunction(configuration));</span>
-<span class="source-line-no">084</span><span id="line-84"> addCostFunction(costFunctions, new CacheAwareCostFunction(configuration));</span>
-<span class="source-line-no">085</span><span id="line-85"> return costFunctions;</span>
-<span class="source-line-no">086</span><span id="line-86"> }</span>
-<span class="source-line-no">087</span><span id="line-87"></span>
-<span class="source-line-no">088</span><span id="line-88"> private void addCostFunction(List<CostFunction> costFunctions, CostFunction costFunction) {</span>
-<span class="source-line-no">089</span><span id="line-89"> if (costFunction.getMultiplier() > 0) {</span>
-<span class="source-line-no">090</span><span id="line-90"> costFunctions.add(costFunction);</span>
-<span class="source-line-no">091</span><span id="line-91"> }</span>
-<span class="source-line-no">092</span><span id="line-92"> }</span>
-<span class="source-line-no">093</span><span id="line-93"></span>
-<span class="source-line-no">094</span><span id="line-94"> @Override</span>
-<span class="source-line-no">095</span><span id="line-95"> public void updateClusterMetrics(ClusterMetrics clusterMetrics) {</span>
-<span class="source-line-no">096</span><span id="line-96"> this.clusterStatus = clusterMetrics;</span>
-<span class="source-line-no">097</span><span id="line-97"> updateRegionLoad();</span>
-<span class="source-line-no">098</span><span id="line-98"> }</span>
-<span class="source-line-no">099</span><span id="line-99"></span>
-<span class="source-line-no">100</span><span id="line-100"> /**</span>
-<span class="source-line-no">101</span><span id="line-101"> * Collect the amount of region cached for all the regions from all the active region servers.</span>
-<span class="source-line-no">102</span><span id="line-102"> */</span>
-<span class="source-line-no">103</span><span id="line-103"> private void updateRegionLoad() {</span>
-<span class="source-line-no">104</span><span id="line-104"> loads = new HashMap<>();</span>
-<span class="source-line-no">105</span><span id="line-105"> regionCacheRatioOnOldServerMap = new HashMap<>();</span>
-<span class="source-line-no">106</span><span id="line-106"> Map<String, Pair<ServerName, Integer>> regionCacheRatioOnCurrentServerMap = new HashMap<>();</span>
-<span class="source-line-no">107</span><span id="line-107"></span>
-<span class="source-line-no">108</span><span id="line-108"> // Build current region cache statistics</span>
-<span class="source-line-no">109</span><span id="line-109"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">110</span><span id="line-110"> // Create a map of region and the server where it is currently hosted</span>
-<span class="source-line-no">111</span><span id="line-111"> sm.getRegionMetrics().forEach((byte[] regionName, RegionMetrics rm) -> {</span>
-<span class="source-line-no">112</span><span id="line-112"> String regionEncodedName = RegionInfo.encodeRegionName(regionName);</span>
-<span class="source-line-no">113</span><span id="line-113"></span>
-<span class="source-line-no">114</span><span id="line-114"> Deque<BalancerRegionLoad> rload = new ArrayDeque<>();</span>
-<span class="source-line-no">115</span><span id="line-115"></span>
-<span class="source-line-no">116</span><span id="line-116"> // Get the total size of the hFiles in this region</span>
-<span class="source-line-no">117</span><span id="line-117"> int regionSizeMB = (int) rm.getRegionSizeMB().get(Size.Unit.MEGABYTE);</span>
-<span class="source-line-no">118</span><span id="line-118"></span>
-<span class="source-line-no">119</span><span id="line-119"> rload.add(new BalancerRegionLoad(rm));</span>
-<span class="source-line-no">120</span><span id="line-120"> // Maintain a map of region and it's total size. This is needed to calculate the cache</span>
-<span class="source-line-no">121</span><span id="line-121"> // ratios for the regions cached on old region servers</span>
-<span class="source-line-no">122</span><span id="line-122"> regionCacheRatioOnCurrentServerMap.put(regionEncodedName, new Pair<>(sn, regionSizeMB));</span>
-<span class="source-line-no">123</span><span id="line-123"> loads.put(regionEncodedName, rload);</span>
-<span class="source-line-no">124</span><span id="line-124"> });</span>
-<span class="source-line-no">125</span><span id="line-125"> });</span>
-<span class="source-line-no">126</span><span id="line-126"></span>
-<span class="source-line-no">127</span><span id="line-127"> // Build cache statistics for the regions hosted previously on old region servers</span>
-<span class="source-line-no">128</span><span id="line-128"> clusterStatus.getLiveServerMetrics().forEach((ServerName sn, ServerMetrics sm) -> {</span>
-<span class="source-line-no">129</span><span id="line-129"> // Find if a region was previously hosted on a server other than the one it is currently</span>
-<span class="source-line-no">130</span><span id="line-130"> // hosted on.</span>
-<span class="source-line-no">131</span><span id="line-131"> sm.getRegionCachedInfo().forEach((String regionEncodedName, Integer regionSizeInCache) -> {</span>
-<span class="source-line-no">132</span><span id="line-132"> // If the region is found in regionCacheRatioOnCurrentServerMap, it is currently hosted on</span>
-<span class="source-line-no">133</span><span id="line-133"> // this server</span>
-<span class="source-line-no">134</span><span id="line-134"> if (regionCacheRatioOnCurrentServerMap.containsKey(regionEncodedName)) {</span>
-<span class="source-line-no">135</span><span id="line-135"> ServerName currentServer =</span>
-<span class="source-line-no">136</span><span id="line-136"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getFirst();</span>
-<span class="source-line-no">137</span><span id="line-137"> if (!ServerName.isSameAddress(currentServer, sn)) {</span>
-<span class="source-line-no">138</span><span id="line-138"> int regionSizeMB =</span>
-<span class="source-line-no">139</span><span id="line-139"> regionCacheRatioOnCurrentServerMap.get(regionEncodedName).getSecond();</span>
-<span class="source-line-no">140</span><span id="line-140"> float regionCacheRatioOnOldServer =</span>
-<span class="source-line-no">141</span><span id="line-141"> regionSizeMB == 0 ? 0.0f : (float) regionSizeInCache / regionSizeMB;</span>
-<span class="source-line-no">142</span><span id="line-142"> regionCacheRatioOnOldServerMap.put(regionEncodedName,</span>
-<span class="source-line-no">143</span><span id="line-143"> new Pair<>(sn, regionCacheRatioOnOldServer));</span>
-<span class="source-line-no">144</span><span id="line-144"> }</span>
-<span class="source-line-no">145</span><span id="line-145"> }</span>
-<span class="source-line-no">146</span><span id="line-146"> });</span>
-<span class="source-line-no">147</span><span id="line-147"> });</span>
-<span class="source-line-no">148</span><span id="line-148"> }</span>
-<span class="source-line-no">149</span><span id="line-149"></span>
-<span class="source-line-no">150</span><span id="line-150"> private RegionInfo getRegionInfoByEncodedName(BalancerClusterState cluster, String regionName) {</span>
-<span class="source-line-no">151</span><span id="line-151"> Optional<RegionInfo> regionInfoOptional =</span>
-<span class="source-line-no">152</span><span id="line-152"> Arrays.stream(cluster.regions).filter((RegionInfo ri) -> {</span>
-<span class="source-line-no">153</span><span id="line-153"> return regionName.equals(ri.getEncodedName());</span>
-<span class="source-line-no">154</span><span id="line-154"> }).findFirst();</span>
-<span class="source-line-no">155</span><span id="line-155"></span>
-<span class="source-line-no">156</span><span id="line-156"> if (regionInfoOptional.isPresent()) {</span>
-<span class="source-line-no">157</span><span id="line-157"> return regionInfoOptional.get();</span>
-<span class="source-line-no">158</span><span id="line-158"> }</span>
-<span class="source-line-no">159</span><span id="line-159"> return null;</span>
-<span class="source-line-no">160</span><span id="line-160"> }</span>
-<span class="source-line-no">161</span><span id="line-161"></span>
-<span class="source-line-no">162</span><span id="line-162"> private class CacheAwareCandidateGenerator extends CandidateGenerator {</span>
-<span class="source-line-no">163</span><span id="line-163"> @Override</span>
-<span class="source-line-no">164</span><span id="line-164"> protected BalanceAction generate(BalancerClusterState cluster) {</span>
-<span class="source-line-no">165</span><span id="line-165"> // Move the regions to the servers they were previously hosted on based on the cache ratio</span>
-<span class="source-line-no">166</span><span id="line-166"> if (</span>
-<span class="source-line-no">167</span><span id="line-167"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">168</span><span id="line-168"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">169</span><span id="line-169"> ) {</span>
-<span class="source-line-no">170</span><span id="line-170"> Map.Entry<String, Pair<ServerName, Float>> regionCacheRatioServerMap =</span>
-<span class="source-line-no">171</span><span id="line-171"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">172</span><span id="line-172"> // Get the server where this region was previously hosted</span>
-<span class="source-line-no">173</span><span id="line-173"> String regionEncodedName = regionCacheRatioServerMap.getKey();</span>
-<span class="source-line-no">174</span><span id="line-174"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">175</span><span id="line-175"> if (regionInfo == null) {</span>
-<span class="source-line-no">176</span><span id="line-176"> LOG.warn("Region {} not found", regionEncodedName);</span>
-<span class="source-line-no">177</span><span id="line-177"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">178</span><span id="line-178"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">179</span><span id="line-179"> }</span>
-<span class="source-line-no">180</span><span id="line-180"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">181</span><span id="line-181"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">182</span><span id="line-182"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">183</span><span id="line-183"> }</span>
-<span class="source-line-no">184</span><span id="line-184"> int regionIndex = cluster.regionsToIndex.get(regionInfo);</span>
-<span class="source-line-no">185</span><span id="line-185"> int oldServerIndex = cluster.serversToIndex</span>
-<span class="source-line-no">186</span><span id="line-186"> .get(regionCacheRatioOnOldServerMap.get(regionEncodedName).getFirst().getAddress());</span>
-<span class="source-line-no">187</span><span id="line-187"> if (oldServerIndex < 0) {</span>
-<span class="source-line-no">188</span><span id="line-188"> LOG.warn("Server previously hosting region {} not found", regionEncodedName);</span>
-<span class="source-line-no">189</span><span id="line-189"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">190</span><span id="line-190"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">191</span><span id="line-191"> }</span>
-<span class="source-line-no">192</span><span id="line-192"></span>
-<span class="source-line-no">193</span><span id="line-193"> float oldRegionCacheRatio =</span>
-<span class="source-line-no">194</span><span id="line-194"> cluster.getOrComputeRegionCacheRatio(regionIndex, oldServerIndex);</span>
-<span class="source-line-no">195</span><span id="line-195"> int currentServerIndex = cluster.regionIndexToServerIndex[regionIndex];</span>
-<span class="source-line-no">196</span><span id="line-196"> float currentRegionCacheRatio =</span>
-<span class="source-line-no">197</span><span id="line-197"> cluster.getOrComputeRegionCacheRatio(regionIndex, currentServerIndex);</span>
-<span class="source-line-no">198</span><span id="line-198"></span>
-<span class="source-line-no">199</span><span id="line-199"> BalanceAction action = generatePlan(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">200</span><span id="line-200"> currentRegionCacheRatio, oldServerIndex, oldRegionCacheRatio);</span>
-<span class="source-line-no">201</span><span id="line-201"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">202</span><span id="line-202"> return action;</span>
-<span class="source-line-no">203</span><span id="line-203"> }</span>
-<span class="source-line-no">204</span><span id="line-204"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">205</span><span id="line-205"> }</span>
-<span class="source-line-no">206</span><span id="line-206"></span>
-<span class="source-line-no">207</span><span id="line-207"> private BalanceAction generatePlan(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">208</span><span id="line-208"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">209</span><span id="line-209"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">210</span><span id="line-210"> return moveRegionToOldServer(cluster, regionIndex, currentServerIndex,</span>
-<span class="source-line-no">211</span><span id="line-211"> cacheRatioOnCurrentServer, oldServerIndex, cacheRatioOnOldServer)</span>
-<span class="source-line-no">212</span><span id="line-212"> ? getAction(currentServerIndex, regionIndex, oldServerIndex, -1)</span>
-<span class="source-line-no">213</span><span id="line-213"> : BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">214</span><span id="line-214"> }</span>
-<span class="source-line-no">215</span><span id="line-215"></span>
-<span class="source-line-no">216</span><span id="line-216"> private boolean moveRegionToOldServer(BalancerClusterState cluster, int regionIndex,</span>
-<span class="source-line-no">217</span><span id="line-217"> int currentServerIndex, float cacheRatioOnCurrentServer, int oldServerIndex,</span>
-<span class="source-line-no">218</span><span id="line-218"> float cacheRatioOnOldServer) {</span>
-<span class="source-line-no">219</span><span id="line-219"> // Find if the region has already moved by comparing the current server index with the</span>
-<span class="source-line-no">220</span><span id="line-220"> // current server index. This can happen when other candidate generator has moved the region</span>
-<span class="source-line-no">221</span><span id="line-221"> if (currentServerIndex < 0 || oldServerIndex < 0) {</span>
-<span class="source-line-no">222</span><span id="line-222"> return false;</span>
-<span class="source-line-no">223</span><span id="line-223"> }</span>
-<span class="source-line-no">224</span><span id="line-224"></span>
-<span class="source-line-no">225</span><span id="line-225"> DecimalFormat df = new DecimalFormat("#");</span>
-<span class="source-line-no">226</span><span id="line-226"> df.setMaximumFractionDigits(4);</span>
-<span class="source-line-no">227</span><span id="line-227"></span>
-<span class="source-line-no">228</span><span id="line-228"> float cacheRatioDiffThreshold = 0.6f;</span>
-<span class="source-line-no">229</span><span id="line-229"></span>
-<span class="source-line-no">230</span><span id="line-230"> // Conditions for moving the region</span>
-<span class="source-line-no">231</span><span id="line-231"></span>
-<span class="source-line-no">232</span><span id="line-232"> // If the region is fully cached on the old server, move the region back</span>
-<span class="source-line-no">233</span><span id="line-233"> if (cacheRatioOnOldServer == 1.0f) {</span>
-<span class="source-line-no">234</span><span id="line-234"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">235</span><span id="line-235"> LOG.debug("Region {} moved to the old server {} as it is fully cached there",</span>
-<span class="source-line-no">236</span><span id="line-236"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[oldServerIndex]);</span>
-<span class="source-line-no">237</span><span id="line-237"> }</span>
-<span class="source-line-no">238</span><span id="line-238"> return true;</span>
-<span class="source-line-no">239</span><span id="line-239"> }</span>
-<span class="source-line-no">240</span><span id="line-240"></span>
-<span class="source-line-no">241</span><span id="line-241"> // Move the region back to the old server if it is cached equally on both the servers</span>
-<span class="source-line-no">242</span><span id="line-242"> if (cacheRatioOnCurrentServer == cacheRatioOnOldServer) {</span>
-<span class="source-line-no">243</span><span id="line-243"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">244</span><span id="line-244"> LOG.debug(</span>
-<span class="source-line-no">245</span><span id="line-245"> "Region {} moved from {} to {} as the region is cached {} equally on both servers",</span>
-<span class="source-line-no">246</span><span id="line-246"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">247</span><span id="line-247"> cluster.servers[oldServerIndex], df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">248</span><span id="line-248"> }</span>
-<span class="source-line-no">249</span><span id="line-249"> return true;</span>
-<span class="source-line-no">250</span><span id="line-250"> }</span>
-<span class="source-line-no">251</span><span id="line-251"></span>
-<span class="source-line-no">252</span><span id="line-252"> // If the region is not fully cached on either of the servers, move the region back to the</span>
-<span class="source-line-no">253</span><span id="line-253"> // old server if the region cache ratio on the current server is still much less than the old</span>
-<span class="source-line-no">254</span><span id="line-254"> // server</span>
-<span class="source-line-no">255</span><span id="line-255"> if (</span>
-<span class="source-line-no">256</span><span id="line-256"> cacheRatioOnOldServer > 0.0f</span>
-<span class="source-line-no">257</span><span id="line-257"> && cacheRatioOnCurrentServer / cacheRatioOnOldServer < cacheRatioDiffThreshold</span>
-<span class="source-line-no">258</span><span id="line-258"> ) {</span>
-<span class="source-line-no">259</span><span id="line-259"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">260</span><span id="line-260"> LOG.debug(</span>
-<span class="source-line-no">261</span><span id="line-261"> "Region {} moved from {} to {} as region cache ratio {} is better than the current "</span>
-<span class="source-line-no">262</span><span id="line-262"> + "cache ratio {}",</span>
-<span class="source-line-no">263</span><span id="line-263"> cluster.regions[regionIndex].getEncodedName(), cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">264</span><span id="line-264"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">265</span><span id="line-265"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">266</span><span id="line-266"> }</span>
-<span class="source-line-no">267</span><span id="line-267"> return true;</span>
-<span class="source-line-no">268</span><span id="line-268"> }</span>
-<span class="source-line-no">269</span><span id="line-269"></span>
-<span class="source-line-no">270</span><span id="line-270"> if (LOG.isDebugEnabled()) {</span>
-<span class="source-line-no">271</span><span id="line-271"> LOG.debug(</span>
-<span class="source-line-no">272</span><span id="line-272"> "Region {} not moved from {} to {} with current cache ratio {} and old cache ratio {}",</span>
-<span class="source-line-no">273</span><span id="line-273"> cluster.regions[regionIndex], cluster.servers[currentServerIndex],</span>
-<span class="source-line-no">274</span><span id="line-274"> cluster.servers[oldServerIndex], cacheRatioOnCurrentServer,</span>
-<span class="source-line-no">275</span><span id="line-275"> df.format(cacheRatioOnCurrentServer));</span>
-<span class="source-line-no">276</span><span id="line-276"> }</span>
-<span class="source-line-no">277</span><span id="line-277"> return false;</span>
-<span class="source-line-no">278</span><span id="line-278"> }</span>
-<span class="source-line-no">279</span><span id="line-279"> }</span>
-<span class="source-line-no">280</span><span id="line-280"></span>
-<span class="source-line-no">281</span><span id="line-281"> private class CacheAwareSkewnessCandidateGenerator extends LoadCandidateGenerator {</span>
-<span class="source-line-no">282</span><span id="line-282"> @Override</span>
-<span class="source-line-no">283</span><span id="line-283"> BalanceAction pickRandomRegions(BalancerClusterState cluster, int thisServer, int otherServer) {</span>
-<span class="source-line-no">284</span><span id="line-284"> // First move all the regions which were hosted previously on some other server back to their</span>
-<span class="source-line-no">285</span><span id="line-285"> // old servers</span>
-<span class="source-line-no">286</span><span id="line-286"> if (</span>
-<span class="source-line-no">287</span><span id="line-287"> !regionCacheRatioOnOldServerMap.isEmpty()</span>
-<span class="source-line-no">288</span><span id="line-288"> && regionCacheRatioOnOldServerMap.entrySet().iterator().hasNext()</span>
-<span class="source-line-no">289</span><span id="line-289"> ) {</span>
-<span class="source-line-no">290</span><span id="line-290"> // Get the first region index in the historical cache ratio list</span>
-<span class="source-line-no">291</span><span id="line-291"> Map.Entry<String, Pair<ServerName, Float>> regionEntry =</span>
-<span class="source-line-no">292</span><span id="line-292"> regionCacheRatioOnOldServerMap.entrySet().iterator().next();</span>
-<span class="source-line-no">293</span><span id="line-293"> String regionEncodedName = regionEntry.getKey();</span>
-<span class="source-line-no">294</span><span id="line-294"></span>
-<span class="source-line-no">295</span><span id="line-295"> RegionInfo regionInfo = getRegionInfoByEncodedName(cluster, regionEncodedName);</span>
-<span class="source-line-no">296</span><span id="line-296"> if (regionInfo == null) {</span>
-<span class="source-line-no">297</span><span id="line-297"> LOG.warn("Region {} does not exist", regionEncodedName);</span>
-<span class="source-line-no">298</span><span id="line-298"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">299</span><span id="line-299"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">300</span><span id="line-300"> }</span>
-<span class="source-line-no">301</span><span id="line-301"> if (regionInfo.isMetaRegion() || regionInfo.getTable().isSystemTable()) {</span>
-<span class="source-line-no">302</span><span id="line-302"> regionCacheRatioOnOldServerMap.remove(regionEncodedName);</span>
-<span class="source-line-no">303</span><span id="line-303"> return BalanceAction.NULL_ACTION;</span>
-<span class="source-line-no">304</span><span id="line-304"> }</span>
... 11200 lines suppressed ...