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 2019/02/07 14:46:53 UTC

[hbase-site] branch asf-site updated: Published site at 7849fa32d681f066dabb52f2e5d279442d3a0df3.

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 c284758  Published site at 7849fa32d681f066dabb52f2e5d279442d3a0df3.
c284758 is described below

commit c2847589f3d1d0d9224c9eb7929cd067019e5ff6
Author: jenkins <bu...@apache.org>
AuthorDate: Thu Feb 7 14:46:44 2019 +0000

    Published site at 7849fa32d681f066dabb52f2e5d279442d3a0df3.
---
 acid-semantics.html                                |   4 +-
 apache_hbase_reference_guide.pdf                   |   4 +-
 book.html                                          |   2 +-
 bulk-loads.html                                    |   4 +-
 checkstyle-aggregate.html                          |  12 +-
 checkstyle.rss                                     |  16 +-
 coc.html                                           |   4 +-
 dependencies.html                                  |   4 +-
 dependency-convergence.html                        |   4 +-
 dependency-info.html                               |   4 +-
 dependency-management.html                         |   4 +-
 devapidocs/constant-values.html                    |   4 +-
 ...nGroupingProvider.IdentityGroupingStrategy.html |   8 +-
 .../hadoop/hbase/wal/RegionGroupingProvider.html   |  18 +-
 .../src-html/org/apache/hadoop/hbase/Version.html  |   4 +-
 ...nGroupingProvider.IdentityGroupingStrategy.html | 288 +++++++++++----------
 ...ionGroupingProvider.RegionGroupingStrategy.html | 288 +++++++++++----------
 .../wal/RegionGroupingProvider.Strategies.html     | 288 +++++++++++----------
 .../hadoop/hbase/wal/RegionGroupingProvider.html   | 288 +++++++++++----------
 downloads.html                                     |   4 +-
 export_control.html                                |   4 +-
 index.html                                         |   4 +-
 integration.html                                   |   4 +-
 issue-tracking.html                                |   4 +-
 license.html                                       |   4 +-
 mail-lists.html                                    |   4 +-
 metrics.html                                       |   4 +-
 old_news.html                                      |   4 +-
 plugin-management.html                             |   4 +-
 plugins.html                                       |   4 +-
 poweredbyhbase.html                                |   4 +-
 project-info.html                                  |   4 +-
 project-reports.html                               |   4 +-
 project-summary.html                               |   4 +-
 pseudo-distributed.html                            |   4 +-
 replication.html                                   |   4 +-
 resources.html                                     |   4 +-
 source-repository.html                             |   4 +-
 sponsors.html                                      |   4 +-
 supportingprojects.html                            |   4 +-
 team-list.html                                     |   4 +-
 testdevapidocs/allclasses-frame.html               |   1 +
 testdevapidocs/allclasses-noframe.html             |   1 +
 testdevapidocs/index-all.html                      |  16 ++
 .../apache/hadoop/hbase/backup/package-tree.html   |   2 +-
 .../hadoop/hbase/class-use/HBaseClassTestRule.html |  24 +-
 .../hbase/class-use/HBaseTestingUtility.html       |   4 +
 .../apache/hadoop/hbase/io/hfile/package-tree.html |   2 +-
 .../org/apache/hadoop/hbase/package-tree.html      |  10 +-
 .../hadoop/hbase/procedure2/package-tree.html      |   2 +-
 .../hadoop/hbase/regionserver/package-tree.html    |   4 +-
 .../org/apache/hadoop/hbase/test/package-tree.html |   4 +-
 .../hadoop/hbase/wal/TestWALSplitCompressed.html   |   4 +-
 .../hadoop/hbase/wal/TestWrongMetaWALFileName.html | 167 +++++++-----
 .../hadoop/hbase/wal/WALPerformanceEvaluation.html |   4 +-
 .../wal/class-use/TestWrongMetaWALFileName.html    | 125 +++++++++
 .../org/apache/hadoop/hbase/wal/package-frame.html |   1 +
 .../apache/hadoop/hbase/wal/package-summary.html   |   6 +
 .../org/apache/hadoop/hbase/wal/package-tree.html  |   3 +-
 testdevapidocs/overview-tree.html                  |   1 +
 .../hadoop/hbase/wal/TestWrongMetaWALFileName.html | 145 +++++++++++
 61 files changed, 1122 insertions(+), 740 deletions(-)

diff --git a/acid-semantics.html b/acid-semantics.html
index ae5643d..c384965 100644
--- a/acid-semantics.html
+++ b/acid-semantics.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) ACID Properties
@@ -611,7 +611,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 0c155f8..37d9565 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
@@ -5,8 +5,8 @@
 /Author (Apache HBase Team)
 /Creator (Asciidoctor PDF 1.5.0.alpha.15, based on Prawn 2.2.2)
 /Producer (Apache HBase Team)
-/ModDate (D:20190206142938+00'00')
-/CreationDate (D:20190206144406+00'00')
+/ModDate (D:20190207142957+00'00')
+/CreationDate (D:20190207144315+00'00')
 >>
 endobj
 2 0 obj
diff --git a/book.html b/book.html
index 825320c..d0abbc4 100644
--- a/book.html
+++ b/book.html
@@ -41579,7 +41579,7 @@ org/apache/hadoop/hbase/security/access/AccessControlClient.revoke:(Lorg/apache/
 <div id="footer">
 <div id="footer-text">
 Version 3.0.0-SNAPSHOT<br>
-Last updated 2019-02-06 14:29:38 UTC
+Last updated 2019-02-07 14:29:57 UTC
 </div>
 </div>
 </body>
diff --git a/bulk-loads.html b/bulk-loads.html
index d6ea3d1..b55ef7c 100644
--- a/bulk-loads.html
+++ b/bulk-loads.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Bulk Loads in Apache HBase (TM)
@@ -316,7 +316,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/checkstyle-aggregate.html b/checkstyle-aggregate.html
index 6491612..feb5ff8 100644
--- a/checkstyle-aggregate.html
+++ b/checkstyle-aggregate.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -291,7 +291,7 @@
 <th><img src="images/icon_warning_sml.gif" alt="" />&#160;Warnings</th>
 <th><img src="images/icon_error_sml.gif" alt="" />&#160;Errors</th></tr>
 <tr class="b">
-<td>3869</td>
+<td>3870</td>
 <td>0</td>
 <td>0</td>
 <td>14373</td></tr></table></div>
@@ -9578,12 +9578,12 @@
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_javadoc.html#JavadocTagContinuationIndentation">JavadocTagContinuationIndentation</a>
 <ul>
 <li>offset: <tt>&quot;2&quot;</tt></li></ul></td>
-<td>726</td>
+<td>725</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_javadoc.html#NonEmptyAtclauseDescription">NonEmptyAtclauseDescription</a></td>
-<td>3392</td>
+<td>3393</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="b">
 <td>misc</td>
@@ -18556,7 +18556,7 @@
 <tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
-<td>JavadocTagContinuationIndentation</td>
+<td>NonEmptyAtclauseDescription</td>
 <td>Javadoc comment at column 0 has parse error. Details: no viable alternative at input '   *' while parsing JAVADOC_TAG</td>
 <td>117</td></tr>
 <tr class="b">
@@ -112363,7 +112363,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/checkstyle.rss b/checkstyle.rss
index 7b2a491..b68c5d3 100644
--- a/checkstyle.rss
+++ b/checkstyle.rss
@@ -25,7 +25,7 @@ under the License.
     <language>en-us</language>
     <copyright>&#169;2007 - 2019 The Apache Software Foundation</copyright>
     <item>
-      <title>File: 3869,
+      <title>File: 3870,
              Errors: 14373,
              Warnings: 0,
              Infos: 0
@@ -10406,6 +10406,20 @@ under the License.
               </tr>
                           <tr>
                 <td>
+                  <a href="http://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName.java">org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.java</a>
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+                <td>
+                  0
+                </td>
+              </tr>
+                          <tr>
+                <td>
                   <a href="http://hbase.apache.org/checkstyle.html#org.apache.hadoop.hbase.TestKeyValue.java">org/apache/hadoop/hbase/TestKeyValue.java</a>
                 </td>
                 <td>
diff --git a/coc.html b/coc.html
index a5280ce..de12db0 100644
--- a/coc.html
+++ b/coc.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Code of Conduct Policy
@@ -385,7 +385,7 @@ email to <a class="externalLink" href="mailto:private@hbase.apache.org">the priv
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/dependencies.html b/dependencies.html
index 880e40a..278ee7a 100644
--- a/dependencies.html
+++ b/dependencies.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -450,7 +450,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/dependency-convergence.html b/dependency-convergence.html
index d9696d9..5bd8f89 100644
--- a/dependency-convergence.html
+++ b/dependency-convergence.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -680,7 +680,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/dependency-info.html b/dependency-info.html
index 30219eb..d45ded0 100644
--- a/dependency-info.html
+++ b/dependency-info.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -323,7 +323,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/dependency-management.html b/dependency-management.html
index d2967e7..9ff8b93 100644
--- a/dependency-management.html
+++ b/dependency-management.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -1009,7 +1009,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/devapidocs/constant-values.html b/devapidocs/constant-values.html
index 79c5fa0..4c9ffb4 100644
--- a/devapidocs/constant-values.html
+++ b/devapidocs/constant-values.html
@@ -3880,7 +3880,7 @@
 <!--   -->
 </a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#date">date</a></code></td>
-<td class="colLast"><code>"Wed Feb  6 14:38:55 UTC 2019"</code></td>
+<td class="colLast"><code>"Thu Feb  7 14:38:24 UTC 2019"</code></td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.revision">
@@ -3894,7 +3894,7 @@
 <!--   -->
 </a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#srcChecksum">srcChecksum</a></code></td>
-<td class="colLast"><code>"3700a234c26c721cc2391b835e6326fe"</code></td>
+<td class="colLast"><code>"81b93c2623bcfd17fff27846637bcfc4"</code></td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.url">
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html b/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
index f5a349f..595ddcd 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
@@ -117,7 +117,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>static class <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.252">RegionGroupingProvider.IdentityGroupingStrategy</a>
+<pre>static class <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.258">RegionGroupingProvider.IdentityGroupingStrategy</a>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
 implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></pre>
 </li>
@@ -210,7 +210,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <ul class="blockListLast">
 <li class="blockList">
 <h4>IdentityGroupingStrategy</h4>
-<pre><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.252">IdentityGroupingStrategy</a>()</pre>
+<pre><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.258">IdentityGroupingStrategy</a>()</pre>
 </li>
 </ul>
 </li>
@@ -227,7 +227,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <ul class="blockList">
 <li class="blockList">
 <h4>init</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.254">init</a>(org.apache.hadoop.conf.Configuration&nbsp;config,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.260">init</a>(org.apache.hadoop.conf.Configuration&nbsp;config,
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -241,7 +241,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <ul class="blockListLast">
 <li class="blockList">
 <h4>group</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.256">group</a>(byte[]&nbsp;identifier,
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.262">group</a>(byte[]&nbsp;identifier,
                     byte[]&nbsp;namespace)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html#group-byte:A-byte:A-">RegionGroupingProvider.RegionGroupingStrategy</a></code></span></div>
 <div class="block">Given an identifier and a namespace, pick a group.</div>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html b/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
index e45a038..2957318 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
+++ b/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
@@ -583,7 +583,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>createProvider</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.161">createProvider</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.167">createProvider</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)
                             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -597,7 +597,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getWALs</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.170">getWALs</a>()</pre>
+<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.176">getWALs</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getWALs--">getWALs</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html" title="interface in org.apache.hadoop.hbase.wal">WALProvider</a></code></dd>
@@ -612,7 +612,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getWAL</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.174">getWAL</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.180">getWAL</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)
             throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -626,7 +626,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getWAL</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.193">getWAL</a>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/wal/WAL.html" title="interface in org.apache.hadoop.hbase.wal">WAL</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.199">getWAL</a>(<a href="../../../../../org/apache/hadoop/hbase/client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;region)
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -646,7 +646,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>shutdown</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.213">shutdown</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.219">shutdown</a>()
               throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#shutdown--">WALProvider</a></code></span></div>
 <div class="block">persist outstanding WALs to storage and stop accepting new appends. This method serves as
@@ -666,7 +666,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>close</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.233">close</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.239">close</a>()
            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#close--">WALProvider</a></code></span></div>
 <div class="block">shutdown utstanding WALs and clean up any persisted state. Call this method only when you will
@@ -686,7 +686,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getNumLogFiles</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.262">getNumLogFiles</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.268">getNumLogFiles</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getNumLogFiles--">WALProvider</a></code></span></div>
 <div class="block">Get number of the log files this provider is managing</div>
 <dl>
@@ -701,7 +701,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getLogFileSize</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.271">getLogFileSize</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.277">getLogFileSize</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#getLogFileSize--">WALProvider</a></code></span></div>
 <div class="block">Get size of the log files this provider is managing</div>
 <dl>
@@ -716,7 +716,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>addWALActionsListener</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.280">addWALActionsListener</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.286">addWALActionsListener</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal">WALActionsListener</a>&nbsp;listener)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/WALProvider.html#addWALActionsListener-org.apache.hadoop.hbase.regionserver.wal.WALActionsListener-">WALProvider</a></code></span></div>
 <div class="block">Add a <a href="../../../../../org/apache/hadoop/hbase/regionserver/wal/WALActionsListener.html" title="interface in org.apache.hadoop.hbase.regionserver.wal"><code>WALActionsListener</code></a>.
  <p>
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
index 2d5198f..f713593 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
@@ -18,9 +18,9 @@
 <span class="sourceLineNo">010</span>  public static final String version = "3.0.0-SNAPSHOT";<a name="line.10"></a>
 <span class="sourceLineNo">011</span>  public static final String revision = "";<a name="line.11"></a>
 <span class="sourceLineNo">012</span>  public static final String user = "jenkins";<a name="line.12"></a>
-<span class="sourceLineNo">013</span>  public static final String date = "Wed Feb  6 14:38:55 UTC 2019";<a name="line.13"></a>
+<span class="sourceLineNo">013</span>  public static final String date = "Thu Feb  7 14:38:24 UTC 2019";<a name="line.13"></a>
 <span class="sourceLineNo">014</span>  public static final String url = "git://jenkins-websites1.apache.org/home/jenkins/jenkins-slave/workspace/hbase_generate_website/hbase";<a name="line.14"></a>
-<span class="sourceLineNo">015</span>  public static final String srcChecksum = "3700a234c26c721cc2391b835e6326fe";<a name="line.15"></a>
+<span class="sourceLineNo">015</span>  public static final String srcChecksum = "81b93c2623bcfd17fff27846637bcfc4";<a name="line.15"></a>
 <span class="sourceLineNo">016</span>}<a name="line.16"></a>
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
index be2a512..e5f77c8 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
@@ -153,147 +153,153 @@
 <span class="sourceLineNo">145</span>    }<a name="line.145"></a>
 <span class="sourceLineNo">146</span>    this.conf = conf;<a name="line.146"></a>
 <span class="sourceLineNo">147</span>    this.factory = factory;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    if (providerId != null) {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>        sb.append(providerId);<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      } else {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>        sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    this.providerId = sb.toString();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    provider.init(factory, conf,<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    return provider;<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>  @Override<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  public List&lt;WAL&gt; getWALs() {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.171"></a>
-<span class="sourceLineNo">172</span>  }<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private WAL getWAL(String group) throws IOException {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    WALProvider provider = cached.get(group);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    if (provider == null) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>      Lock lock = createLock.acquireLock(group);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>      try {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>        provider = cached.get(group);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        if (provider == null) {<a name="line.180"></a>
-<span class="sourceLineNo">181</span>          provider = createProvider(group);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>          cached.put(group, provider);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>        }<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      } finally {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>        lock.unlock();<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      }<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    return provider.getWAL(null);<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
-<span class="sourceLineNo">191</span><a name="line.191"></a>
-<span class="sourceLineNo">192</span>  @Override<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    String group;<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      group = META_WAL_GROUP_NAME;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    } else {<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      byte[] id;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      byte[] namespace;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      if (region != null) {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        id = region.getEncodedNameAsBytes();<a name="line.201"></a>
-<span class="sourceLineNo">202</span>        namespace = region.getTable().getNamespace();<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      } else {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>        namespace = null;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      }<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      group = strategy.group(id, namespace);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    }<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    return getWAL(group);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>  }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>  @Override<a name="line.212"></a>
-<span class="sourceLineNo">213</span>  public void shutdown() throws IOException {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    // save the last exception and rethrow<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    IOException failure = null;<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    for (WALProvider provider: cached.values()) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      try {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        provider.shutdown();<a name="line.218"></a>
-<span class="sourceLineNo">219</span>      } catch (IOException e) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.220"></a>
-<span class="sourceLineNo">221</span>        if (LOG.isDebugEnabled()) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.222"></a>
-<span class="sourceLineNo">223</span>        }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>        failure = e;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      }<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    if (failure != null) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      throw failure;<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    }<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>  @Override<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  public void close() throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    // save the last exception and rethrow<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    IOException failure = null;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    for (WALProvider provider : cached.values()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      try {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>        provider.close();<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      } catch (IOException e) {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.240"></a>
-<span class="sourceLineNo">241</span>        if (LOG.isDebugEnabled()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>        }<a name="line.243"></a>
-<span class="sourceLineNo">244</span>        failure = e;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      }<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    if (failure != null) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      throw failure;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    }<a name="line.249"></a>
-<span class="sourceLineNo">250</span>  }<a name="line.250"></a>
-<span class="sourceLineNo">251</span><a name="line.251"></a>
-<span class="sourceLineNo">252</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    @Override<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    public void init(Configuration config, String providerId) {}<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    @Override<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      return Bytes.toString(identifier);<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
-<span class="sourceLineNo">260</span><a name="line.260"></a>
-<span class="sourceLineNo">261</span>  @Override<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  public long getNumLogFiles() {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    long numLogFiles = 0;<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    for (WALProvider provider : cached.values()) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      numLogFiles += provider.getNumLogFiles();<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    }<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    return numLogFiles;<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  }<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>  @Override<a name="line.270"></a>
-<span class="sourceLineNo">271</span>  public long getLogFileSize() {<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    long logFileSize = 0;<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    for (WALProvider provider : cached.values()) {<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      logFileSize += provider.getLogFileSize();<a name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    return logFileSize;<a name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>  @Override<a name="line.279"></a>
-<span class="sourceLineNo">280</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    listeners.add(listener);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
-<span class="sourceLineNo">288</span>}<a name="line.288"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>    if (META_WAL_PROVIDER_ID.equals(providerId)) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      // do not change the provider id if it is for meta<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.providerId = providerId;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    } else {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      if (providerId != null) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>          sb.append(providerId);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        } else {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>        }<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      this.providerId = sb.toString();<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>  }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    provider.init(factory, conf,<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    return provider;<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  }<a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>  @Override<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  public List&lt;WAL&gt; getWALs() {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  private WAL getWAL(String group) throws IOException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    WALProvider provider = cached.get(group);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    if (provider == null) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      Lock lock = createLock.acquireLock(group);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      try {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        provider = cached.get(group);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>        if (provider == null) {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>          provider = createProvider(group);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          cached.put(group, provider);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>        }<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      } finally {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>        lock.unlock();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    }<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    return provider.getWAL(null);<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  }<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  @Override<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    String group;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      group = META_WAL_GROUP_NAME;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    } else {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      byte[] id;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      byte[] namespace;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      if (region != null) {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>        id = region.getEncodedNameAsBytes();<a name="line.207"></a>
+<span class="sourceLineNo">208</span>        namespace = region.getTable().getNamespace();<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      } else {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.210"></a>
+<span class="sourceLineNo">211</span>        namespace = null;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      }<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      group = strategy.group(id, namespace);<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    }<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    return getWAL(group);<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>  @Override<a name="line.218"></a>
+<span class="sourceLineNo">219</span>  public void shutdown() throws IOException {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    // save the last exception and rethrow<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    IOException failure = null;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    for (WALProvider provider: cached.values()) {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      try {<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        provider.shutdown();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      } catch (IOException e) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        if (LOG.isDebugEnabled()) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        failure = e;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    if (failure != null) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      throw failure;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Override<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void close() throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    // save the last exception and rethrow<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    IOException failure = null;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    for (WALProvider provider : cached.values()) {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      try {<a name="line.243"></a>
+<span class="sourceLineNo">244</span>        provider.close();<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      } catch (IOException e) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.246"></a>
+<span class="sourceLineNo">247</span>        if (LOG.isDebugEnabled()) {<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>        }<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        failure = e;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      }<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    }<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    if (failure != null) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      throw failure;<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  }<a name="line.256"></a>
+<span class="sourceLineNo">257</span><a name="line.257"></a>
+<span class="sourceLineNo">258</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    @Override<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    public void init(Configuration config, String providerId) {}<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    @Override<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return Bytes.toString(identifier);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
+<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>  @Override<a name="line.267"></a>
+<span class="sourceLineNo">268</span>  public long getNumLogFiles() {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    long numLogFiles = 0;<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    for (WALProvider provider : cached.values()) {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      numLogFiles += provider.getNumLogFiles();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    return numLogFiles;<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public long getLogFileSize() {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    long logFileSize = 0;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    for (WALProvider provider : cached.values()) {<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      logFileSize += provider.getLogFileSize();<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    }<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    return logFileSize;<a name="line.282"></a>
+<span class="sourceLineNo">283</span>  }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>  @Override<a name="line.285"></a>
+<span class="sourceLineNo">286</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    listeners.add(listener);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>  }<a name="line.293"></a>
+<span class="sourceLineNo">294</span>}<a name="line.294"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html
index be2a512..e5f77c8 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html
@@ -153,147 +153,153 @@
 <span class="sourceLineNo">145</span>    }<a name="line.145"></a>
 <span class="sourceLineNo">146</span>    this.conf = conf;<a name="line.146"></a>
 <span class="sourceLineNo">147</span>    this.factory = factory;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    if (providerId != null) {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>        sb.append(providerId);<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      } else {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>        sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    this.providerId = sb.toString();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    provider.init(factory, conf,<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    return provider;<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>  @Override<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  public List&lt;WAL&gt; getWALs() {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.171"></a>
-<span class="sourceLineNo">172</span>  }<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private WAL getWAL(String group) throws IOException {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    WALProvider provider = cached.get(group);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    if (provider == null) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>      Lock lock = createLock.acquireLock(group);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>      try {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>        provider = cached.get(group);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        if (provider == null) {<a name="line.180"></a>
-<span class="sourceLineNo">181</span>          provider = createProvider(group);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>          cached.put(group, provider);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>        }<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      } finally {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>        lock.unlock();<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      }<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    return provider.getWAL(null);<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
-<span class="sourceLineNo">191</span><a name="line.191"></a>
-<span class="sourceLineNo">192</span>  @Override<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    String group;<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      group = META_WAL_GROUP_NAME;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    } else {<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      byte[] id;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      byte[] namespace;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      if (region != null) {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        id = region.getEncodedNameAsBytes();<a name="line.201"></a>
-<span class="sourceLineNo">202</span>        namespace = region.getTable().getNamespace();<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      } else {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>        namespace = null;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      }<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      group = strategy.group(id, namespace);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    }<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    return getWAL(group);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>  }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>  @Override<a name="line.212"></a>
-<span class="sourceLineNo">213</span>  public void shutdown() throws IOException {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    // save the last exception and rethrow<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    IOException failure = null;<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    for (WALProvider provider: cached.values()) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      try {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        provider.shutdown();<a name="line.218"></a>
-<span class="sourceLineNo">219</span>      } catch (IOException e) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.220"></a>
-<span class="sourceLineNo">221</span>        if (LOG.isDebugEnabled()) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.222"></a>
-<span class="sourceLineNo">223</span>        }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>        failure = e;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      }<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    if (failure != null) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      throw failure;<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    }<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>  @Override<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  public void close() throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    // save the last exception and rethrow<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    IOException failure = null;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    for (WALProvider provider : cached.values()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      try {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>        provider.close();<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      } catch (IOException e) {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.240"></a>
-<span class="sourceLineNo">241</span>        if (LOG.isDebugEnabled()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>        }<a name="line.243"></a>
-<span class="sourceLineNo">244</span>        failure = e;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      }<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    if (failure != null) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      throw failure;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    }<a name="line.249"></a>
-<span class="sourceLineNo">250</span>  }<a name="line.250"></a>
-<span class="sourceLineNo">251</span><a name="line.251"></a>
-<span class="sourceLineNo">252</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    @Override<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    public void init(Configuration config, String providerId) {}<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    @Override<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      return Bytes.toString(identifier);<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
-<span class="sourceLineNo">260</span><a name="line.260"></a>
-<span class="sourceLineNo">261</span>  @Override<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  public long getNumLogFiles() {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    long numLogFiles = 0;<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    for (WALProvider provider : cached.values()) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      numLogFiles += provider.getNumLogFiles();<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    }<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    return numLogFiles;<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  }<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>  @Override<a name="line.270"></a>
-<span class="sourceLineNo">271</span>  public long getLogFileSize() {<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    long logFileSize = 0;<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    for (WALProvider provider : cached.values()) {<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      logFileSize += provider.getLogFileSize();<a name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    return logFileSize;<a name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>  @Override<a name="line.279"></a>
-<span class="sourceLineNo">280</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    listeners.add(listener);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
-<span class="sourceLineNo">288</span>}<a name="line.288"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>    if (META_WAL_PROVIDER_ID.equals(providerId)) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      // do not change the provider id if it is for meta<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.providerId = providerId;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    } else {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      if (providerId != null) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>          sb.append(providerId);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        } else {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>        }<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      this.providerId = sb.toString();<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>  }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    provider.init(factory, conf,<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    return provider;<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  }<a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>  @Override<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  public List&lt;WAL&gt; getWALs() {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  private WAL getWAL(String group) throws IOException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    WALProvider provider = cached.get(group);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    if (provider == null) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      Lock lock = createLock.acquireLock(group);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      try {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        provider = cached.get(group);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>        if (provider == null) {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>          provider = createProvider(group);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          cached.put(group, provider);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>        }<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      } finally {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>        lock.unlock();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    }<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    return provider.getWAL(null);<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  }<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  @Override<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    String group;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      group = META_WAL_GROUP_NAME;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    } else {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      byte[] id;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      byte[] namespace;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      if (region != null) {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>        id = region.getEncodedNameAsBytes();<a name="line.207"></a>
+<span class="sourceLineNo">208</span>        namespace = region.getTable().getNamespace();<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      } else {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.210"></a>
+<span class="sourceLineNo">211</span>        namespace = null;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      }<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      group = strategy.group(id, namespace);<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    }<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    return getWAL(group);<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>  @Override<a name="line.218"></a>
+<span class="sourceLineNo">219</span>  public void shutdown() throws IOException {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    // save the last exception and rethrow<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    IOException failure = null;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    for (WALProvider provider: cached.values()) {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      try {<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        provider.shutdown();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      } catch (IOException e) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        if (LOG.isDebugEnabled()) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        failure = e;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    if (failure != null) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      throw failure;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Override<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void close() throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    // save the last exception and rethrow<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    IOException failure = null;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    for (WALProvider provider : cached.values()) {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      try {<a name="line.243"></a>
+<span class="sourceLineNo">244</span>        provider.close();<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      } catch (IOException e) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.246"></a>
+<span class="sourceLineNo">247</span>        if (LOG.isDebugEnabled()) {<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>        }<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        failure = e;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      }<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    }<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    if (failure != null) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      throw failure;<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  }<a name="line.256"></a>
+<span class="sourceLineNo">257</span><a name="line.257"></a>
+<span class="sourceLineNo">258</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    @Override<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    public void init(Configuration config, String providerId) {}<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    @Override<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return Bytes.toString(identifier);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
+<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>  @Override<a name="line.267"></a>
+<span class="sourceLineNo">268</span>  public long getNumLogFiles() {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    long numLogFiles = 0;<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    for (WALProvider provider : cached.values()) {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      numLogFiles += provider.getNumLogFiles();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    return numLogFiles;<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public long getLogFileSize() {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    long logFileSize = 0;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    for (WALProvider provider : cached.values()) {<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      logFileSize += provider.getLogFileSize();<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    }<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    return logFileSize;<a name="line.282"></a>
+<span class="sourceLineNo">283</span>  }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>  @Override<a name="line.285"></a>
+<span class="sourceLineNo">286</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    listeners.add(listener);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>  }<a name="line.293"></a>
+<span class="sourceLineNo">294</span>}<a name="line.294"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html
index be2a512..e5f77c8 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html
@@ -153,147 +153,153 @@
 <span class="sourceLineNo">145</span>    }<a name="line.145"></a>
 <span class="sourceLineNo">146</span>    this.conf = conf;<a name="line.146"></a>
 <span class="sourceLineNo">147</span>    this.factory = factory;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    if (providerId != null) {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>        sb.append(providerId);<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      } else {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>        sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    this.providerId = sb.toString();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    provider.init(factory, conf,<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    return provider;<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>  @Override<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  public List&lt;WAL&gt; getWALs() {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.171"></a>
-<span class="sourceLineNo">172</span>  }<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private WAL getWAL(String group) throws IOException {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    WALProvider provider = cached.get(group);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    if (provider == null) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>      Lock lock = createLock.acquireLock(group);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>      try {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>        provider = cached.get(group);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        if (provider == null) {<a name="line.180"></a>
-<span class="sourceLineNo">181</span>          provider = createProvider(group);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>          cached.put(group, provider);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>        }<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      } finally {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>        lock.unlock();<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      }<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    return provider.getWAL(null);<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
-<span class="sourceLineNo">191</span><a name="line.191"></a>
-<span class="sourceLineNo">192</span>  @Override<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    String group;<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      group = META_WAL_GROUP_NAME;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    } else {<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      byte[] id;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      byte[] namespace;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      if (region != null) {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        id = region.getEncodedNameAsBytes();<a name="line.201"></a>
-<span class="sourceLineNo">202</span>        namespace = region.getTable().getNamespace();<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      } else {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>        namespace = null;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      }<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      group = strategy.group(id, namespace);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    }<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    return getWAL(group);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>  }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>  @Override<a name="line.212"></a>
-<span class="sourceLineNo">213</span>  public void shutdown() throws IOException {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    // save the last exception and rethrow<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    IOException failure = null;<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    for (WALProvider provider: cached.values()) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      try {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        provider.shutdown();<a name="line.218"></a>
-<span class="sourceLineNo">219</span>      } catch (IOException e) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.220"></a>
-<span class="sourceLineNo">221</span>        if (LOG.isDebugEnabled()) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.222"></a>
-<span class="sourceLineNo">223</span>        }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>        failure = e;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      }<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    if (failure != null) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      throw failure;<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    }<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>  @Override<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  public void close() throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    // save the last exception and rethrow<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    IOException failure = null;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    for (WALProvider provider : cached.values()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      try {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>        provider.close();<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      } catch (IOException e) {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.240"></a>
-<span class="sourceLineNo">241</span>        if (LOG.isDebugEnabled()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>        }<a name="line.243"></a>
-<span class="sourceLineNo">244</span>        failure = e;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      }<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    if (failure != null) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      throw failure;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    }<a name="line.249"></a>
-<span class="sourceLineNo">250</span>  }<a name="line.250"></a>
-<span class="sourceLineNo">251</span><a name="line.251"></a>
-<span class="sourceLineNo">252</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    @Override<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    public void init(Configuration config, String providerId) {}<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    @Override<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      return Bytes.toString(identifier);<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
-<span class="sourceLineNo">260</span><a name="line.260"></a>
-<span class="sourceLineNo">261</span>  @Override<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  public long getNumLogFiles() {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    long numLogFiles = 0;<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    for (WALProvider provider : cached.values()) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      numLogFiles += provider.getNumLogFiles();<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    }<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    return numLogFiles;<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  }<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>  @Override<a name="line.270"></a>
-<span class="sourceLineNo">271</span>  public long getLogFileSize() {<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    long logFileSize = 0;<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    for (WALProvider provider : cached.values()) {<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      logFileSize += provider.getLogFileSize();<a name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    return logFileSize;<a name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>  @Override<a name="line.279"></a>
-<span class="sourceLineNo">280</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    listeners.add(listener);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
-<span class="sourceLineNo">288</span>}<a name="line.288"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>    if (META_WAL_PROVIDER_ID.equals(providerId)) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      // do not change the provider id if it is for meta<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.providerId = providerId;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    } else {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      if (providerId != null) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>          sb.append(providerId);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        } else {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>        }<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      this.providerId = sb.toString();<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>  }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    provider.init(factory, conf,<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    return provider;<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  }<a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>  @Override<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  public List&lt;WAL&gt; getWALs() {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  private WAL getWAL(String group) throws IOException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    WALProvider provider = cached.get(group);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    if (provider == null) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      Lock lock = createLock.acquireLock(group);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      try {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        provider = cached.get(group);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>        if (provider == null) {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>          provider = createProvider(group);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          cached.put(group, provider);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>        }<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      } finally {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>        lock.unlock();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    }<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    return provider.getWAL(null);<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  }<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  @Override<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    String group;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      group = META_WAL_GROUP_NAME;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    } else {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      byte[] id;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      byte[] namespace;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      if (region != null) {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>        id = region.getEncodedNameAsBytes();<a name="line.207"></a>
+<span class="sourceLineNo">208</span>        namespace = region.getTable().getNamespace();<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      } else {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.210"></a>
+<span class="sourceLineNo">211</span>        namespace = null;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      }<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      group = strategy.group(id, namespace);<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    }<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    return getWAL(group);<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>  @Override<a name="line.218"></a>
+<span class="sourceLineNo">219</span>  public void shutdown() throws IOException {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    // save the last exception and rethrow<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    IOException failure = null;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    for (WALProvider provider: cached.values()) {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      try {<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        provider.shutdown();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      } catch (IOException e) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        if (LOG.isDebugEnabled()) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        failure = e;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    if (failure != null) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      throw failure;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Override<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void close() throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    // save the last exception and rethrow<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    IOException failure = null;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    for (WALProvider provider : cached.values()) {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      try {<a name="line.243"></a>
+<span class="sourceLineNo">244</span>        provider.close();<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      } catch (IOException e) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.246"></a>
+<span class="sourceLineNo">247</span>        if (LOG.isDebugEnabled()) {<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>        }<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        failure = e;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      }<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    }<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    if (failure != null) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      throw failure;<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  }<a name="line.256"></a>
+<span class="sourceLineNo">257</span><a name="line.257"></a>
+<span class="sourceLineNo">258</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    @Override<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    public void init(Configuration config, String providerId) {}<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    @Override<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return Bytes.toString(identifier);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
+<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>  @Override<a name="line.267"></a>
+<span class="sourceLineNo">268</span>  public long getNumLogFiles() {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    long numLogFiles = 0;<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    for (WALProvider provider : cached.values()) {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      numLogFiles += provider.getNumLogFiles();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    return numLogFiles;<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public long getLogFileSize() {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    long logFileSize = 0;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    for (WALProvider provider : cached.values()) {<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      logFileSize += provider.getLogFileSize();<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    }<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    return logFileSize;<a name="line.282"></a>
+<span class="sourceLineNo">283</span>  }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>  @Override<a name="line.285"></a>
+<span class="sourceLineNo">286</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    listeners.add(listener);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>  }<a name="line.293"></a>
+<span class="sourceLineNo">294</span>}<a name="line.294"></a>
 
 
 
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
index be2a512..e5f77c8 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html
@@ -153,147 +153,153 @@
 <span class="sourceLineNo">145</span>    }<a name="line.145"></a>
 <span class="sourceLineNo">146</span>    this.conf = conf;<a name="line.146"></a>
 <span class="sourceLineNo">147</span>    this.factory = factory;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    if (providerId != null) {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>        sb.append(providerId);<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      } else {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>        sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    this.providerId = sb.toString();<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>  }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    provider.init(factory, conf,<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    return provider;<a name="line.166"></a>
-<span class="sourceLineNo">167</span>  }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>  @Override<a name="line.169"></a>
-<span class="sourceLineNo">170</span>  public List&lt;WAL&gt; getWALs() {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.171"></a>
-<span class="sourceLineNo">172</span>  }<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>  private WAL getWAL(String group) throws IOException {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    WALProvider provider = cached.get(group);<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    if (provider == null) {<a name="line.176"></a>
-<span class="sourceLineNo">177</span>      Lock lock = createLock.acquireLock(group);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>      try {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>        provider = cached.get(group);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>        if (provider == null) {<a name="line.180"></a>
-<span class="sourceLineNo">181</span>          provider = createProvider(group);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>          cached.put(group, provider);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>        }<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      } finally {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>        lock.unlock();<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      }<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    return provider.getWAL(null);<a name="line.189"></a>
-<span class="sourceLineNo">190</span>  }<a name="line.190"></a>
-<span class="sourceLineNo">191</span><a name="line.191"></a>
-<span class="sourceLineNo">192</span>  @Override<a name="line.192"></a>
-<span class="sourceLineNo">193</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    String group;<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      group = META_WAL_GROUP_NAME;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    } else {<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      byte[] id;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      byte[] namespace;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      if (region != null) {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        id = region.getEncodedNameAsBytes();<a name="line.201"></a>
-<span class="sourceLineNo">202</span>        namespace = region.getTable().getNamespace();<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      } else {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>        namespace = null;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>      }<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      group = strategy.group(id, namespace);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    }<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    return getWAL(group);<a name="line.209"></a>
-<span class="sourceLineNo">210</span>  }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>  @Override<a name="line.212"></a>
-<span class="sourceLineNo">213</span>  public void shutdown() throws IOException {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    // save the last exception and rethrow<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    IOException failure = null;<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    for (WALProvider provider: cached.values()) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      try {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>        provider.shutdown();<a name="line.218"></a>
-<span class="sourceLineNo">219</span>      } catch (IOException e) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.220"></a>
-<span class="sourceLineNo">221</span>        if (LOG.isDebugEnabled()) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.222"></a>
-<span class="sourceLineNo">223</span>        }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>        failure = e;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      }<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    }<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    if (failure != null) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      throw failure;<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    }<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>  @Override<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  public void close() throws IOException {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    // save the last exception and rethrow<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    IOException failure = null;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    for (WALProvider provider : cached.values()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      try {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>        provider.close();<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      } catch (IOException e) {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.240"></a>
-<span class="sourceLineNo">241</span>        if (LOG.isDebugEnabled()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>        }<a name="line.243"></a>
-<span class="sourceLineNo">244</span>        failure = e;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      }<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    if (failure != null) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      throw failure;<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    }<a name="line.249"></a>
-<span class="sourceLineNo">250</span>  }<a name="line.250"></a>
-<span class="sourceLineNo">251</span><a name="line.251"></a>
-<span class="sourceLineNo">252</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    @Override<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    public void init(Configuration config, String providerId) {}<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    @Override<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      return Bytes.toString(identifier);<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
-<span class="sourceLineNo">260</span><a name="line.260"></a>
-<span class="sourceLineNo">261</span>  @Override<a name="line.261"></a>
-<span class="sourceLineNo">262</span>  public long getNumLogFiles() {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    long numLogFiles = 0;<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    for (WALProvider provider : cached.values()) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      numLogFiles += provider.getNumLogFiles();<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    }<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    return numLogFiles;<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  }<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>  @Override<a name="line.270"></a>
-<span class="sourceLineNo">271</span>  public long getLogFileSize() {<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    long logFileSize = 0;<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    for (WALProvider provider : cached.values()) {<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      logFileSize += provider.getLogFileSize();<a name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    return logFileSize;<a name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>  @Override<a name="line.279"></a>
-<span class="sourceLineNo">280</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>    listeners.add(listener);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
-<span class="sourceLineNo">288</span>}<a name="line.288"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>    if (META_WAL_PROVIDER_ID.equals(providerId)) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      // do not change the provider id if it is for meta<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.providerId = providerId;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    } else {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      StringBuilder sb = new StringBuilder().append(factory.factoryId);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      if (providerId != null) {<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        if (providerId.startsWith(WAL_FILE_NAME_DELIMITER)) {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>          sb.append(providerId);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        } else {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          sb.append(WAL_FILE_NAME_DELIMITER).append(providerId);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>        }<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      this.providerId = sb.toString();<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    this.strategy = getStrategy(conf, REGION_GROUPING_STRATEGY, DEFAULT_REGION_GROUPING_STRATEGY);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    this.providerClass = factory.getProviderClass(DELEGATE_PROVIDER, DEFAULT_DELEGATE_PROVIDER);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>  }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>  private WALProvider createProvider(String group) throws IOException {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    WALProvider provider = WALFactory.createProvider(providerClass);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    provider.init(factory, conf,<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      META_WAL_PROVIDER_ID.equals(providerId) ? META_WAL_PROVIDER_ID : group);<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    provider.addWALActionsListener(new MetricsWAL());<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    return provider;<a name="line.172"></a>
+<span class="sourceLineNo">173</span>  }<a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>  @Override<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  public List&lt;WAL&gt; getWALs() {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cached.values().stream().flatMap(p -&gt; p.getWALs().stream()).collect(Collectors.toList());<a name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  private WAL getWAL(String group) throws IOException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    WALProvider provider = cached.get(group);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    if (provider == null) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      Lock lock = createLock.acquireLock(group);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      try {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        provider = cached.get(group);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>        if (provider == null) {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>          provider = createProvider(group);<a name="line.187"></a>
+<span class="sourceLineNo">188</span>          listeners.forEach(provider::addWALActionsListener);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>          cached.put(group, provider);<a name="line.189"></a>
+<span class="sourceLineNo">190</span>        }<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      } finally {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>        lock.unlock();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    }<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    return provider.getWAL(null);<a name="line.195"></a>
+<span class="sourceLineNo">196</span>  }<a name="line.196"></a>
+<span class="sourceLineNo">197</span><a name="line.197"></a>
+<span class="sourceLineNo">198</span>  @Override<a name="line.198"></a>
+<span class="sourceLineNo">199</span>  public WAL getWAL(RegionInfo region) throws IOException {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    String group;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    if (META_WAL_PROVIDER_ID.equals(this.providerId)) {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      group = META_WAL_GROUP_NAME;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    } else {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      byte[] id;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      byte[] namespace;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>      if (region != null) {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>        id = region.getEncodedNameAsBytes();<a name="line.207"></a>
+<span class="sourceLineNo">208</span>        namespace = region.getTable().getNamespace();<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      } else {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>        id = HConstants.EMPTY_BYTE_ARRAY;<a name="line.210"></a>
+<span class="sourceLineNo">211</span>        namespace = null;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      }<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      group = strategy.group(id, namespace);<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    }<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    return getWAL(group);<a name="line.215"></a>
+<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>  @Override<a name="line.218"></a>
+<span class="sourceLineNo">219</span>  public void shutdown() throws IOException {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    // save the last exception and rethrow<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    IOException failure = null;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    for (WALProvider provider: cached.values()) {<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      try {<a name="line.223"></a>
+<span class="sourceLineNo">224</span>        provider.shutdown();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      } catch (IOException e) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>        LOG.error("Problem shutting down wal provider '" + provider + "': " + e.getMessage());<a name="line.226"></a>
+<span class="sourceLineNo">227</span>        if (LOG.isDebugEnabled()) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>          LOG.debug("Details of problem shutting down wal provider '" + provider + "'", e);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>        }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>        failure = e;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      }<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    if (failure != null) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      throw failure;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    }<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>  @Override<a name="line.238"></a>
+<span class="sourceLineNo">239</span>  public void close() throws IOException {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    // save the last exception and rethrow<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    IOException failure = null;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    for (WALProvider provider : cached.values()) {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      try {<a name="line.243"></a>
+<span class="sourceLineNo">244</span>        provider.close();<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      } catch (IOException e) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>        LOG.error("Problem closing wal provider '" + provider + "': " + e.getMessage());<a name="line.246"></a>
+<span class="sourceLineNo">247</span>        if (LOG.isDebugEnabled()) {<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          LOG.debug("Details of problem closing wal provider '" + provider + "'", e);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>        }<a name="line.249"></a>
+<span class="sourceLineNo">250</span>        failure = e;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      }<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    }<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    if (failure != null) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      throw failure;<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    }<a name="line.255"></a>
+<span class="sourceLineNo">256</span>  }<a name="line.256"></a>
+<span class="sourceLineNo">257</span><a name="line.257"></a>
+<span class="sourceLineNo">258</span>  static class IdentityGroupingStrategy implements RegionGroupingStrategy {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    @Override<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    public void init(Configuration config, String providerId) {}<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    @Override<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    public String group(final byte[] identifier, final byte[] namespace) {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return Bytes.toString(identifier);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
+<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>  @Override<a name="line.267"></a>
+<span class="sourceLineNo">268</span>  public long getNumLogFiles() {<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    long numLogFiles = 0;<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    for (WALProvider provider : cached.values()) {<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      numLogFiles += provider.getNumLogFiles();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    }<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    return numLogFiles;<a name="line.273"></a>
+<span class="sourceLineNo">274</span>  }<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>  @Override<a name="line.276"></a>
+<span class="sourceLineNo">277</span>  public long getLogFileSize() {<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    long logFileSize = 0;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    for (WALProvider provider : cached.values()) {<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      logFileSize += provider.getLogFileSize();<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    }<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    return logFileSize;<a name="line.282"></a>
+<span class="sourceLineNo">283</span>  }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>  @Override<a name="line.285"></a>
+<span class="sourceLineNo">286</span>  public void addWALActionsListener(WALActionsListener listener) {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    // Notice that there is an assumption that this method must be called before the getWAL above,<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    // so we can make sure there is no sub WALProvider yet, so we only add the listener to our<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    // listeners list without calling addWALActionListener for each WALProvider. Although it is no<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    // hurt to execute an extra loop to call addWALActionListener for each WALProvider, but if the<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    // extra code actually works, then we will have other big problems. So leave it as is.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    listeners.add(listener);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>  }<a name="line.293"></a>
+<span class="sourceLineNo">294</span>}<a name="line.294"></a>
 
 
 
diff --git a/downloads.html b/downloads.html
index ab9e83d..5c89894 100644
--- a/downloads.html
+++ b/downloads.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase Downloads</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -489,7 +489,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/export_control.html b/export_control.html
index be64f4e..d597f88 100644
--- a/export_control.html
+++ b/export_control.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Export Control
@@ -341,7 +341,7 @@ for more details.</p>
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/index.html b/index.html
index effab5f..42c34d1 100644
--- a/index.html
+++ b/index.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBaseâ„¢ Home</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -421,7 +421,7 @@ Apache HBase is an open-source, distributed, versioned, non-relational database
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/integration.html b/integration.html
index 6cad673..1c7c53a 100644
--- a/integration.html
+++ b/integration.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -301,7 +301,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/issue-tracking.html b/issue-tracking.html
index fdb7eb2..58e07ed 100644
--- a/issue-tracking.html
+++ b/issue-tracking.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -298,7 +298,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/license.html b/license.html
index 4075a89..e3cd8f1 100644
--- a/license.html
+++ b/license.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -501,7 +501,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/mail-lists.html b/mail-lists.html
index 5763ed9..c3d9f51 100644
--- a/mail-lists.html
+++ b/mail-lists.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -351,7 +351,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/metrics.html b/metrics.html
index d64ff8c..c6614c7 100644
--- a/metrics.html
+++ b/metrics.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) Metrics
@@ -469,7 +469,7 @@ export HBASE_REGIONSERVER_OPTS=&quot;$HBASE_JMX_OPTS -Dcom.sun.management.jmxrem
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/old_news.html b/old_news.html
index 620425b..79e8c87 100644
--- a/old_news.html
+++ b/old_news.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Old Apache HBase (TM) News
@@ -450,7 +450,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/plugin-management.html b/plugin-management.html
index 5488254..9a46598 100644
--- a/plugin-management.html
+++ b/plugin-management.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -450,7 +450,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/plugins.html b/plugins.html
index 98757e5..4f62f44 100644
--- a/plugins.html
+++ b/plugins.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -381,7 +381,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/poweredbyhbase.html b/poweredbyhbase.html
index 64e4ba8..41b3c0f 100644
--- a/poweredbyhbase.html
+++ b/poweredbyhbase.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Powered By Apache HBase™</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -779,7 +779,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/project-info.html b/project-info.html
index ab18168..a428925 100644
--- a/project-info.html
+++ b/project-info.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -345,7 +345,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/project-reports.html b/project-reports.html
index 81677c0..74e894d 100644
--- a/project-reports.html
+++ b/project-reports.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -315,7 +315,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/project-summary.html b/project-summary.html
index 8cf096f..e8da464 100644
--- a/project-summary.html
+++ b/project-summary.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -341,7 +341,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/pseudo-distributed.html b/pseudo-distributed.html
index ca70dce..a77522b 100644
--- a/pseudo-distributed.html
+++ b/pseudo-distributed.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
 Running Apache HBase (TM) in pseudo-distributed mode
@@ -318,7 +318,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/replication.html b/replication.html
index e9a01c9..f860a63 100644
--- a/replication.html
+++ b/replication.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Apache HBase (TM) Replication
@@ -313,7 +313,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/resources.html b/resources.html
index 2c36d40..d3cd3e8 100644
--- a/resources.html
+++ b/resources.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Other Apache HBase (TM) Resources</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -341,7 +341,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/source-repository.html b/source-repository.html
index d525860..75d07e9 100644
--- a/source-repository.html
+++ b/source-repository.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -309,7 +309,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/sponsors.html b/sponsors.html
index e05dc92..d5db57c 100644
--- a/sponsors.html
+++ b/sponsors.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase™ Sponsors</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -343,7 +343,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/supportingprojects.html b/supportingprojects.html
index 8257ba0..10eff5a 100644
--- a/supportingprojects.html
+++ b/supportingprojects.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Supporting Projects</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -530,7 +530,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/team-list.html b/team-list.html
index 54b2953..e72e3c8 100644
--- a/team-list.html
+++ b/team-list.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20190206" />
+    <meta name="Date-Revision-yyyymmdd" content="20190207" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -782,7 +782,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2019-02-06</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2019-02-07</li>
             </p>
                 </div>
 
diff --git a/testdevapidocs/allclasses-frame.html b/testdevapidocs/allclasses-frame.html
index 3b088e3..1bc166c 100644
--- a/testdevapidocs/allclasses-frame.html
+++ b/testdevapidocs/allclasses-frame.html
@@ -2531,6 +2531,7 @@
 <li><a href="org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.visibility" target="classFrame">TestWithDisabledAuthorization</a></li>
 <li><a href="org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example" target="classFrame">TestWriteHeavyIncrementObserver</a></li>
 <li><a href="org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.html" title="class in org.apache.hadoop.hbase.coprocessor.example" target="classFrame">TestWriteHeavyIncrementObserverWithMemStoreCompaction</a></li>
+<li><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">TestWrongMetaWALFileName</a></li>
 <li><a href="org/apache/hadoop/hbase/rest/client/TestXmlParsing.html" title="class in org.apache.hadoop.hbase.rest.client" target="classFrame">TestXmlParsing</a></li>
 <li><a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html" title="class in org.apache.hadoop.hbase.procedure2" target="classFrame">TestYieldProcedures</a></li>
 <li><a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestProcEnv.html" title="class in org.apache.hadoop.hbase.procedure2" target="classFrame">TestYieldProcedures.TestProcEnv</a></li>
diff --git a/testdevapidocs/allclasses-noframe.html b/testdevapidocs/allclasses-noframe.html
index 3e30c63..13aca1c 100644
--- a/testdevapidocs/allclasses-noframe.html
+++ b/testdevapidocs/allclasses-noframe.html
@@ -2531,6 +2531,7 @@
 <li><a href="org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.visibility">TestWithDisabledAuthorization</a></li>
 <li><a href="org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.html" title="class in org.apache.hadoop.hbase.coprocessor.example">TestWriteHeavyIncrementObserver</a></li>
 <li><a href="org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.html" title="class in org.apache.hadoop.hbase.coprocessor.example">TestWriteHeavyIncrementObserverWithMemStoreCompaction</a></li>
+<li><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></li>
 <li><a href="org/apache/hadoop/hbase/rest/client/TestXmlParsing.html" title="class in org.apache.hadoop.hbase.rest.client">TestXmlParsing</a></li>
 <li><a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html" title="class in org.apache.hadoop.hbase.procedure2">TestYieldProcedures</a></li>
 <li><a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestProcEnv.html" title="class in org.apache.hadoop.hbase.procedure2">TestYieldProcedures.TestProcEnv</a></li>
diff --git a/testdevapidocs/index-all.html b/testdevapidocs/index-all.html
index 526ec43..bbb12af 100644
--- a/testdevapidocs/index-all.html
+++ b/testdevapidocs/index-all.html
@@ -6909,6 +6909,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html#CLASS_RULE">CLASS_RULE</a></span> - Static variable in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal">TestWALSplitCompressed</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#CLASS_RULE">CLASS_RULE</a></span> - Static variable in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#CLASS_RULE">CLASS_RULE</a></span> - Static variable in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html" title="class in org.apache.hadoop.hbase.zookeeper">TestHQuorumPeer</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestInstancePending.html#CLASS_RULE">CLASS_RULE</a></span> - Static variable in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestInstancePending.html" title="class in org.apache.hadoop.hbase.zookeeper">TestInstancePending</a></dt>
@@ -39104,6 +39106,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWALSplit.html#setUp--">setUp()</a></span> - Method in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALSplit.html" title="class in org.apache.hadoop.hbase.wal">TestWALSplit</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#setUp--">setUp()</a></span> - Static method in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html#setup--">setup()</a></span> - Method in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestHQuorumPeer.html" title="class in org.apache.hadoop.hbase.zookeeper">TestHQuorumPeer</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html#setUp--">setUp()</a></span> - Static method in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html" title="class in org.apache.hadoop.hbase.zookeeper">TestReadOnlyZKClient</a></dt>
@@ -44463,6 +44467,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWALSplit.html#tearDown--">tearDown()</a></span> - Method in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALSplit.html" title="class in org.apache.hadoop.hbase.wal">TestWALSplit</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#tearDown--">tearDown()</a></span> - Static method in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html#tearDown--">tearDown()</a></span> - Static method in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html" title="class in org.apache.hadoop.hbase.zookeeper">TestReadOnlyZKClient</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestZKUtil.html#tearDown--">tearDown()</a></span> - Static method in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestZKUtil.html" title="class in org.apache.hadoop.hbase.zookeeper">TestZKUtil</a></dt>
@@ -45235,6 +45241,8 @@
 <div class="block">see HBASE-18132 This is a test case of failing open a wal(for replication for example) after
  all datanode restarted (rolling upgrade, for example).</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#test--">test()</a></span> - Method in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestInstancePending.html#test--">test()</a></span> - Method in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestInstancePending.html" title="class in org.apache.hadoop.hbase.zookeeper">TestInstancePending</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html#test2727--">test2727()</a></span> - Method in class org.apache.hadoop.hbase.regionserver.wal.<a href="org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html" title="class in org.apache.hadoop.hbase.regionserver.wal">AbstractTestWALReplay</a></dt>
@@ -68184,6 +68192,12 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html#testWritingToNonExistentTable--">testWritingToNonExistentTable()</a></span> - Method in class org.apache.hadoop.hbase.mapreduce.<a href="org/apache/hadoop/hbase/mapreduce/TestTableMapReduce.html" title="class in org.apache.hadoop.hbase.mapreduce">TestTableMapReduce</a></dt>
 <dd>&nbsp;</dd>
+<dt><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWrongMetaWALFileName</span></a> - Class in <a href="org/apache/hadoop/hbase/wal/package-summary.html">org.apache.hadoop.hbase.wal</a></dt>
+<dd>
+<div class="block">Testcase for HBASE-21843.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#TestWrongMetaWALFileName--">TestWrongMetaWALFileName()</a></span> - Constructor for class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/http/TestHttpServer.html#testXFrameHeaderSameOrigin--">testXFrameHeaderSameOrigin()</a></span> - Method in class org.apache.hadoop.hbase.http.<a href="org/apache/hadoop/hbase/http/TestHttpServer.html" title="class in org.apache.hadoop.hbase.http">TestHttpServer</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/master/procedure/TestMasterProcedureScheduler.html#testXLockWaitingForExecutingSharedLockToRelease--">testXLockWaitingForExecutingSharedLockToRelease()</a></span> - Method in class org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/TestMasterProcedureScheduler.html" title="class in org.apache.hadoop.hbase.master.procedure">TestMasterProcedureScheduler</a></dt>
@@ -70146,6 +70160,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWALMethods.html#util">util</a></span> - Variable in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWALMethods.html" title="class in org.apache.hadoop.hbase.wal">TestWALMethods</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#UTIL">UTIL</a></span> - Static variable in class org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html#UTIL">UTIL</a></span> - Static variable in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestReadOnlyZKClient.html" title="class in org.apache.hadoop.hbase.zookeeper">TestReadOnlyZKClient</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/zookeeper/TestZKUtil.html#UTIL">UTIL</a></span> - Static variable in class org.apache.hadoop.hbase.zookeeper.<a href="org/apache/hadoop/hbase/zookeeper/TestZKUtil.html" title="class in org.apache.hadoop.hbase.zookeeper">TestZKUtil</a></dt>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/backup/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/backup/package-tree.html
index b726ce9..7e63870 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/backup/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/backup/package-tree.html
@@ -146,8 +146,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupMergeWithFailures.FailurePhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">TestIncrementalBackupMergeWithFailures.FailurePhase</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/TestBackupDeleteWithFailures.Failure.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">TestBackupDeleteWithFailures.Failure</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/TestIncrementalBackupMergeWithFailures.FailurePhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">TestIncrementalBackupMergeWithFailures.FailurePhase</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
index a473bc1..34926a0 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseClassTestRule.html
@@ -6933,46 +6933,50 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestRaceBetweenGetWALAndGetWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestRaceBetweenGetWALAndGetWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWrongMetaWALFileName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitBoundedLogWriterCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitBoundedLogWriterCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestRaceBetweenGetWALAndGetWALs.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestRaceBetweenGetWALAndGetWALs.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALMethods.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALMethods.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitBoundedLogWriterCreation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitBoundedLogWriterCreation.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALMethods.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALMethods.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestReadWriteSeqIdFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestReadWriteSeqIdFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALOpenAfterDNRollingStart.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALOpenAfterDNRollingStart.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALReaderOnSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALReaderOnSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestReadWriteSeqIdFiles.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestReadWriteSeqIdFiles.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALReaderOnSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALReaderOnSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestBoundedRegionGroupingStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestBoundedRegionGroupingStrategy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestSecureWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSecureWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestBoundedRegionGroupingStrategy.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestBoundedRegionGroupingStrategy.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TestWALSplitCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TestWALRootDir.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALRootDir.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWALSplitCompressed.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestDisabledWAL.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestDisabledWAL.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
 </tr>
 </tbody>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtility.html b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtility.html
index 3e7f8d5..d770912 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtility.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/class-use/HBaseTestingUtility.html
@@ -4918,6 +4918,10 @@
 <td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></code></td>
 <td class="colLast"><span class="typeNameLabel">TestSyncReplicationWALProvider.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestSyncReplicationWALProvider.html#UTIL">UTIL</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TestWrongMetaWALFileName.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
index f9b0ab1..95e74d8 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
@@ -158,8 +158,8 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestCacheOnWrite.CacheOnWriteType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TagUsage.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TagUsage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/TestCacheOnWrite.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">TestCacheOnWrite.CacheOnWriteType</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
index 4b3db62..1f7b046 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
@@ -579,15 +579,15 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterManager.ServiceType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterManager.ServiceType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ResourceChecker.Phase.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ResourceChecker.Phase</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ResourceChecker.Phase.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ResourceChecker.Phase</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HBaseClusterManager.CommandProvider.Operation.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HBaseClusterManager.CommandProvider.Operation</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
index 2a6c906..cd30ab8 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
@@ -234,9 +234,9 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.StuckStateMachineState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureBypass.StuckStateMachineState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestStateMachineProcedure.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.TestSMProcedureState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestStateMachineProcedure.TestSMProcedureState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureBypass.StuckStateMachineState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureBypass.StuckStateMachineState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
 </ul>
 </li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
index 9c1556e..1d39742 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
@@ -709,11 +709,11 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCacheOnWriteInSchema.CacheOnWriteType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.Metric.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRegionServerReadRequestMetrics.Metric</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.ActionType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestMultiLogThreshold.ActionType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestCacheOnWriteInSchema.CacheOnWriteType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestCacheOnWriteInSchema.CacheOnWriteType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/DataBlockEncodingTool.Manipulation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DataBlockEncodingTool.Manipulation</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestAtomicOperation.TestStep.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestAtomicOperation.TestStep</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TestRegionServerReadRequestMetrics.Metric.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRegionServerReadRequestMetrics.Metric</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
index 9dee54d..2251d0a 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
@@ -253,9 +253,9 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestWithCellVisibilityLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestWithCellVisibilityLoadAndVerify.Counters</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
 </ul>
 </li>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html b/testdevapidocs/org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html
index 37ab319..7292a3a 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html
@@ -50,7 +50,7 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitBoundedLogWriterCreation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" target="_top">Frames</a></li>
@@ -302,7 +302,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.html" t
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitBoundedLogWriterCreation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" target="_top">Frames</a></li>
diff --git a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html b/testdevapidocs/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html
similarity index 56%
copy from devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
copy to testdevapidocs/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html
index f5a349f..4157444 100644
--- a/devapidocs/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RegionGroupingProvider.IdentityGroupingStrategy (Apache HBase 3.0.0-SNAPSHOT API)</title>
+<title>TestWrongMetaWALFileName (Apache HBase 3.0.0-SNAPSHOT Test API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,14 +12,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RegionGroupingProvider.IdentityGroupingStrategy (Apache HBase 3.0.0-SNAPSHOT API)";
+            parent.document.title="TestWrongMetaWALFileName (Apache HBase 3.0.0-SNAPSHOT Test API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = {"i0":9,"i1":9,"i2":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -40,7 +40,7 @@ var activeTableTab = "activeTableTab";
 <li><a href="../../../../../overview-summary.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/RegionGroupingProvider.IdentityGroupingStrategy.html">Use</a></li>
+<li><a href="class-use/TestWrongMetaWALFileName.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>
@@ -49,12 +49,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html" target="_top">Frames</a></li>
-<li><a href="RegionGroupingProvider.IdentityGroupingStrategy.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" target="_top">Frames</a></li>
+<li><a href="TestWrongMetaWALFileName.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -75,13 +75,13 @@ var activeTableTab = "activeTableTab";
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
@@ -93,33 +93,26 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.hadoop.hbase.wal</div>
-<h2 title="Class RegionGroupingProvider.IdentityGroupingStrategy" class="title">Class RegionGroupingProvider.IdentityGroupingStrategy</h2>
+<h2 title="Class TestWrongMetaWALFileName" class="title">Class TestWrongMetaWALFileName</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.hadoop.hbase.wal.RegionGroupingProvider.IdentityGroupingStrategy</li>
+<li>org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName</li>
 </ul>
 </li>
 </ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
-<dl>
-<dt>All Implemented Interfaces:</dt>
-<dd><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></dd>
-</dl>
-<dl>
-<dt>Enclosing class:</dt>
-<dd><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html" title="class in org.apache.hadoop.hbase.wal">RegionGroupingProvider</a></dd>
-</dl>
 <hr>
 <br>
-<pre>static class <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.html#line.252">RegionGroupingProvider.IdentityGroupingStrategy</a>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
-implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></pre>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.41">TestWrongMetaWALFileName</a>
+extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Testcase for HBASE-21843. Used to confirm that we use the correct name for meta wal file when
+ using <code>RegionGroupingProvider</code>.</div>
 </li>
 </ul>
 </div>
@@ -132,13 +125,21 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <!--   -->
 </a>
 <h3>Field Summary</h3>
-<ul class="blockList">
-<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.wal.RegionGroupingProvider.RegionGroupingStrategy">
-<!--   -->
-</a>
-<h3>Fields inherited from interface&nbsp;org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></h3>
-<code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html#GROUP_NAME_DELIMITER">GROUP_NAME_DELIMITER</a></code></li>
-</ul>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#CLASS_RULE">CLASS_RULE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>private static <a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#UTIL">UTIL</a></span></code>&nbsp;</td>
+</tr>
+</table>
 </li>
 </ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
@@ -153,7 +154,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#IdentityGroupingStrategy--">IdentityGroupingStrategy</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#TestWrongMetaWALFileName--">TestWrongMetaWALFileName</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -165,22 +166,22 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#group-byte:A-byte:A-">group</a></span>(byte[]&nbsp;identifier,
-     byte[]&nbsp;namespace)</code>
-<div class="block">Given an identifier and a namespace, pick a group.</div>
-</td>
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#setUp--">setUp</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#tearDown--">tearDown</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#init-org.apache.hadoop.conf.Configuration-java.lang.String-">init</a></span>(org.apache.hadoop.conf.Configuration&nbsp;config,
-    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#test--">test</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
@@ -198,19 +199,45 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="CLASS_RULE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>CLASS_RULE</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseClassTestRule.html" title="class in org.apache.hadoop.hbase">HBaseClassTestRule</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.44">CLASS_RULE</a></pre>
+</li>
+</ul>
+<a name="UTIL">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>UTIL</h4>
+<pre>private static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseTestingUtility</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.47">UTIL</a></pre>
+</li>
+</ul>
+</li>
+</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="IdentityGroupingStrategy--">
+<a name="TestWrongMetaWALFileName--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>IdentityGroupingStrategy</h4>
-<pre><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.252">IdentityGroupingStrategy</a>()</pre>
+<h4>TestWrongMetaWALFileName</h4>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.41">TestWrongMetaWALFileName</a>()</pre>
 </li>
 </ul>
 </li>
@@ -221,33 +248,45 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="init-org.apache.hadoop.conf.Configuration-java.lang.String-">
+<a name="setUp--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUp</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.50">setUp</a>()
+                  throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="tearDown--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>init</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.254">init</a>(org.apache.hadoop.conf.Configuration&nbsp;config,
-                 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;providerId)</pre>
+<h4>tearDown</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.56">tearDown</a>()
+                     throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html#init-org.apache.hadoop.conf.Configuration-java.lang.String-">init</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
-<a name="group-byte:A-byte:A-">
+<a name="test--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>group</h4>
-<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html#line.256">group</a>(byte[]&nbsp;identifier,
-                    byte[]&nbsp;namespace)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html#group-byte:A-byte:A-">RegionGroupingProvider.RegionGroupingStrategy</a></code></span></div>
-<div class="block">Given an identifier and a namespace, pick a group.</div>
+<h4>test</h4>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html#line.61">test</a>()
+          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html#group-byte:A-byte:A-">group</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal">RegionGroupingProvider.RegionGroupingStrategy</a></code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
 </dl>
 </li>
 </ul>
@@ -270,7 +309,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <li><a href="../../../../../overview-summary.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/RegionGroupingProvider.IdentityGroupingStrategy.html">Use</a></li>
+<li><a href="class-use/TestWrongMetaWALFileName.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>
@@ -279,12 +318,12 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.RegionGroupingStrategy.html" title="interface in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/RegionGroupingProvider.IdentityGroupingStrategy.html" target="_top">Frames</a></li>
-<li><a href="RegionGroupingProvider.IdentityGroupingStrategy.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../index.html?org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" target="_top">Frames</a></li>
+<li><a href="TestWrongMetaWALFileName.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -305,13 +344,13 @@ implements <a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingPro
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html b/testdevapidocs/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html
index 29f9422..8829045 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html
@@ -49,7 +49,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.WALPutBenchmark.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -771,7 +771,7 @@ implements org.apache.hadoop.util.Tool</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.WALPutBenchmark.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/class-use/TestWrongMetaWALFileName.html b/testdevapidocs/org/apache/hadoop/hbase/wal/class-use/TestWrongMetaWALFileName.html
new file mode 100644
index 0000000..eaa786f
--- /dev/null
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/class-use/TestWrongMetaWALFileName.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName (Apache HBase 3.0.0-SNAPSHOT Test API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName (Apache HBase 3.0.0-SNAPSHOT Test API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../../../../../../overview-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/wal/class-use/TestWrongMetaWALFileName.html" target="_top">Frames</a></li>
+<li><a href="TestWrongMetaWALFileName.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName" class="title">Uses of Class<br>org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.hadoop.hbase.wal.TestWrongMetaWALFileName</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../../../../../../overview-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/wal/class-use/TestWrongMetaWALFileName.html" target="_top">Frames</a></li>
+<li><a href="TestWrongMetaWALFileName.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/package-frame.html b/testdevapidocs/org/apache/hadoop/hbase/wal/package-frame.html
index a7a433e..a171d5e 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/package-frame.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/package-frame.html
@@ -36,6 +36,7 @@
 <li><a href="TestWALSplit.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">TestWALSplit</a></li>
 <li><a href="TestWALSplitBoundedLogWriterCreation.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">TestWALSplitBoundedLogWriterCreation</a></li>
 <li><a href="TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">TestWALSplitCompressed</a></li>
+<li><a href="TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">TestWrongMetaWALFileName</a></li>
 <li><a href="WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal" target="classFrame">WALPerformanceEvaluation</a></li>
 </ul>
 <h2 title="Enums">Enums</h2>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/package-summary.html b/testdevapidocs/org/apache/hadoop/hbase/wal/package-summary.html
index 59b3c88..26a914d 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/package-summary.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/package-summary.html
@@ -192,6 +192,12 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal">TestWrongMetaWALFileName</a></td>
+<td class="colLast">
+<div class="block">Testcase for HBASE-21843.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/wal/WALPerformanceEvaluation.html" title="class in org.apache.hadoop.hbase.wal">WALPerformanceEvaluation</a></td>
 <td class="colLast">
 <div class="block">This class runs performance benchmarks for <code>WAL</code>.</div>
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
index a8cb53c..f355fbd 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
@@ -132,6 +132,7 @@
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplitCompressed.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALSplitCompressed</span></a></li>
 </ul>
 </li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWrongMetaWALFileName</span></a></li>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Thread</span></a> (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.ZombieLastLogWriterRegionServer.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALSplit.ZombieLastLogWriterRegionServer</span></a></li>
@@ -147,9 +148,9 @@
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true [...]
 <ul>
-<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/IOTestProvider.AllowedOperations.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">IOTestProvider.AllowedOperations</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/FaultyFSLog.FailureType.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">FaultyFSLog.FailureType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/TestWALSplit.Corruptions.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWALSplit.Corruptions</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/IOTestProvider.AllowedOperations.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">IOTestProvider.AllowedOperations</span></a></li>
 </ul>
 </li>
 </ul>
diff --git a/testdevapidocs/overview-tree.html b/testdevapidocs/overview-tree.html
index c86f1f4..2ffeb6a 100644
--- a/testdevapidocs/overview-tree.html
+++ b/testdevapidocs/overview-tree.html
@@ -4073,6 +4073,7 @@
 </li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="org/apache/hadoop/hbase/util/TestWeakObjectPool.html" title="class in org.apache.hadoop.hbase.util"><span class="typeNameLink">TestWeakObjectPool</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.visibility.<a href="org/apache/hadoop/hbase/security/visibility/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.visibility"><span class="typeNameLink">TestWithDisabledAuthorization</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html" title="class in org.apache.hadoop.hbase.wal"><span class="typeNameLink">TestWrongMetaWALFileName</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.client.<a href="org/apache/hadoop/hbase/rest/client/TestXmlParsing.html" title="class in org.apache.hadoop.hbase.rest.client"><span class="typeNameLink">TestXmlParsing</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.html" title="class in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="org/apache/hadoop/hbase/procedure2/TestYieldProcedures.TestProcEnv.html" title="class in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestYieldProcedures.TestProcEnv</span></a></li>
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html
new file mode 100644
index 0000000..c940cda
--- /dev/null
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/wal/TestWrongMetaWALFileName.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+<title>Source code</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+</head>
+<body>
+<div class="sourceContainer">
+<pre><span class="sourceLineNo">001</span>/**<a name="line.1"></a>
+<span class="sourceLineNo">002</span> * Licensed to the Apache Software Foundation (ASF) under one<a name="line.2"></a>
+<span class="sourceLineNo">003</span> * or more contributor license agreements.  See the NOTICE file<a name="line.3"></a>
+<span class="sourceLineNo">004</span> * distributed with this work for additional information<a name="line.4"></a>
+<span class="sourceLineNo">005</span> * regarding copyright ownership.  The ASF licenses this file<a name="line.5"></a>
+<span class="sourceLineNo">006</span> * to you under the Apache License, Version 2.0 (the<a name="line.6"></a>
+<span class="sourceLineNo">007</span> * "License"); you may not use this file except in compliance<a name="line.7"></a>
+<span class="sourceLineNo">008</span> * with the License.  You may obtain a copy of the License at<a name="line.8"></a>
+<span class="sourceLineNo">009</span> *<a name="line.9"></a>
+<span class="sourceLineNo">010</span> *     http://www.apache.org/licenses/LICENSE-2.0<a name="line.10"></a>
+<span class="sourceLineNo">011</span> *<a name="line.11"></a>
+<span class="sourceLineNo">012</span> * Unless required by applicable law or agreed to in writing, software<a name="line.12"></a>
+<span class="sourceLineNo">013</span> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.13"></a>
+<span class="sourceLineNo">014</span> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.14"></a>
+<span class="sourceLineNo">015</span> * See the License for the specific language governing permissions and<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * limitations under the License.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> */<a name="line.17"></a>
+<span class="sourceLineNo">018</span>package org.apache.hadoop.hbase.wal;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>import static org.junit.Assert.assertTrue;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.hadoop.fs.Path;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.hadoop.hbase.HBaseClassTestRule;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import org.apache.hadoop.hbase.HBaseTestingUtility;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import org.apache.hadoop.hbase.TableName;<a name="line.25"></a>
+<span class="sourceLineNo">026</span>import org.apache.hadoop.hbase.regionserver.HRegionServer;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import org.apache.hadoop.hbase.testclassification.RegionServerTests;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.junit.AfterClass;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.junit.BeforeClass;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.junit.ClassRule;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.junit.Test;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import org.junit.experimental.categories.Category;<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>/**<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * Testcase for HBASE-21843. Used to confirm that we use the correct name for meta wal file when<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * using {@link RegionGroupingProvider}.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>@Category({ RegionServerTests.class, MediumTests.class })<a name="line.40"></a>
+<span class="sourceLineNo">041</span>public class TestWrongMetaWALFileName {<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>  @ClassRule<a name="line.43"></a>
+<span class="sourceLineNo">044</span>  public static final HBaseClassTestRule CLASS_RULE =<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    HBaseClassTestRule.forClass(TestWrongMetaWALFileName.class);<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>  private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>  @BeforeClass<a name="line.49"></a>
+<span class="sourceLineNo">050</span>  public static void setUp() throws Exception {<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    UTIL.getConfiguration().set(WALFactory.WAL_PROVIDER, WALFactory.Providers.multiwal.name());<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    UTIL.startMiniCluster(1);<a name="line.52"></a>
+<span class="sourceLineNo">053</span>  }<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>  @AfterClass<a name="line.55"></a>
+<span class="sourceLineNo">056</span>  public static void tearDown() throws Exception {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    UTIL.shutdownMiniCluster();<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  }<a name="line.58"></a>
+<span class="sourceLineNo">059</span><a name="line.59"></a>
+<span class="sourceLineNo">060</span>  @Test<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  public void test() throws Exception {<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    // create a table so that we will write some edits to meta<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    TableName tableName = TableName.valueOf("whatever");<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    UTIL.createTable(tableName, Bytes.toBytes("family"));<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    UTIL.waitTableAvailable(tableName);<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    HRegionServer rs = UTIL.getMiniHBaseCluster().getRegionServer(0);<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    Path walDir = new Path(rs.getWALRootDir(),<a name="line.67"></a>
+<span class="sourceLineNo">068</span>      AbstractFSWALProvider.getWALDirectoryName(rs.getServerName().toString()));<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    // we should have meta wal files.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    assertTrue(<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      rs.getWALFileSystem().listStatus(walDir, AbstractFSWALProvider::isMetaFile).length &gt; 0);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>  }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>}<a name="line.73"></a>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>