http://git-wip-us.apache.org/repos/asf/hbase-site/blob/f272b0e8/devapidocs/org/apache/hadoop/hbase/master/TableStateManager.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/master/TableStateManager.html 
b/devapidocs/org/apache/hadoop/hbase/master/TableStateManager.html
index 399dc36..5436db5 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/TableStateManager.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/TableStateManager.html
@@ -18,8 +18,8 @@
     catch(err) {
     }
 //-->
-var methods = 
{"i0":9,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static 
Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = 
{"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":42,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance 
Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -50,7 +50,7 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a 
href="../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html" 
title="class in org.apache.hadoop.hbase.master"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li>Next&nbsp;Class</li>
+<li><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.TableStateNotFoundException.html"
 title="class in org.apache.hadoop.hbase.master"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a 
href="../../../../../index.html?org/apache/hadoop/hbase/master/TableStateManager.html"
 target="_top">Frames</a></li>
@@ -74,7 +74,7 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -107,13 +107,18 @@ var activeTableTab = "activeTableTab";
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><a 
href="../../../../../org/apache/hadoop/hbase/master/MirroringTableStateManager.html"
 title="class in 
org.apache.hadoop.hbase.master">MirroringTableStateManager</a></dd>
+</dl>
 <hr>
 <br>
 <pre>@InterfaceAudience.Private
-public class <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.50">TableStateManager</a>
+public class <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.56">TableStateManager</a>
 extends <a 
href="http://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">This is a helper class used to manage table states.
- States persisted in tableinfo and cached internally.
+ This class uses hbase:meta as its store for table state so hbase:meta must be 
online before
+ <a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#start--"><code>start()</code></a>
 is called.
  TODO: Cache state. Cut down on meta looksups.</div>
 </li>
 </ul>
@@ -121,6 +126,25 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Nested Class Summary table, listing nested classes, and an 
explanation">
+<caption><span>Nested Classes</span><span 
class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.TableStateNotFoundException.html"
 title="class in 
org.apache.hadoop.hbase.master">TableStateManager.TableStateNotFoundException</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -134,7 +158,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReadWriteLock.html?is-external=true";
 title="class or interface in 
java.util.concurrent.locks">ReadWriteLock</a></code></td>
+<td class="colFirst"><code>(package private) <a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReadWriteLock.html?is-external=true";
 title="class or interface in 
java.util.concurrent.locks">ReadWriteLock</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#lock">lock</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
@@ -142,9 +166,16 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#LOG">LOG</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>private <a 
href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in 
org.apache.hadoop.hbase.master">MasterServices</a></code></td>
+<td class="colFirst"><code>(package private) <a 
href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in 
org.apache.hadoop.hbase.master">MasterServices</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#master">master</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a 
href="http://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/master/TableStateManager.html#MIGRATE_TABLE_STATE_FROM_ZK_KEY">MIGRATE_TABLE_STATE_FROM_ZK_KEY</a></span></code>
+<div class="block">Set this key to false in Configuration to disable migrating 
table state from zookeeper
+ so hbase:meta table.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -172,51 +203,73 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span 
class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a 
href="javascript:show(1);">Static Methods</a></span><span 
class="tabEnd">&nbsp;</span></span><span id="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="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><span id="t6" class="tableTab"><span><a 
href="javascript:show(32);">Deprecated Methods</a></span><span 
class="tabEnd">&nbsp;</span></span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>static void</code></td>
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#deleteZooKeeper-org.apache.hadoop.hbase.TableName-">deleteZooKeeper</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Since 2.0.0. To be removed 
in hbase-3.0.0.</span></div>
+</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>protected void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#fixTableState-org.apache.hadoop.hbase.client.TableState-">fixTableState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/client/TableState.html" 
title="class in 
org.apache.hadoop.hbase.client">TableState</a>&nbsp;tableState)</code>
+<div class="block">For subclasses in case they want to do fixup post 
hbase:meta.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>private void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#fixTableStates-org.apache.hadoop.hbase.TableDescriptors-org.apache.hadoop.hbase.client.Connection-">fixTableStates</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" 
title="interface in 
org.apache.hadoop.hbase">TableDescriptors</a>&nbsp;tableDescriptors,
               <a 
href="../../../../../org/apache/hadoop/hbase/client/Connection.html" 
title="interface in 
org.apache.hadoop.hbase.client">Connection</a>&nbsp;connection)</code>&nbsp;</td>
 </tr>
-<tr id="i1" class="rowColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code><a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true";
 title="class or interface in java.util">Set</a>&lt;<a 
href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#getTablesInStates-org.apache.hadoop.hbase.client.TableState.State...-">getTablesInStates</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)</code>
 <div class="block">Return all tables in given states.</div>
 </td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code><a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#getTableState-org.apache.hadoop.hbase.TableName-">getTableState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i3" class="rowColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#isTablePresent-org.apache.hadoop.hbase.TableName-">isTablePresent</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i4" class="altColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#isTableState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State...-">isTableState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
             <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)</code>&nbsp;</td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>private void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#migrateZooKeeper--">migrateZooKeeper</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Since 2.0.0. Remove in 
hbase-3.0.0.</span></div>
+</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>protected <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.html" 
title="class in org.apache.hadoop.hbase.client">TableState</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#readMetaState-org.apache.hadoop.hbase.TableName-">readMetaState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#setDeletedTable-org.apache.hadoop.hbase.TableName-">setDeletedTable</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</code>&nbsp;</td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#setTableState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-">setTableState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
              <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState)</code>
 <div class="block">Set table state to provided.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#setTableStateIfInStates-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-org.apache.hadoop.hbase.client.TableState.State...-">setTableStateIfInStates</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                        <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState,
@@ -225,7 +278,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
  Caller should lock table on write.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#setTableStateIfNotInStates-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-org.apache.hadoop.hbase.client.TableState.State...-">setTableStateIfNotInStates</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                           <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState,
@@ -234,11 +287,11 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
  Caller should lock table on write.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#start--">start</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>protected void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#updateMetaState-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.client.TableState.State-">updateMetaState</a></span>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState)</code>&nbsp;</td>
@@ -271,7 +324,22 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>LOG</h4>
-<pre>private static final&nbsp;org.slf4j.Logger <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.51">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.57">LOG</a></pre>
+</li>
+</ul>
+<a name="MIGRATE_TABLE_STATE_FROM_ZK_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>MIGRATE_TABLE_STATE_FROM_ZK_KEY</h4>
+<pre>static final&nbsp;<a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String</a> <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.62">MIGRATE_TABLE_STATE_FROM_ZK_KEY</a></pre>
+<div class="block">Set this key to false in Configuration to disable migrating 
table state from zookeeper
+ so hbase:meta table.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a 
href="../../../../../constant-values.html#org.apache.hadoop.hbase.master.TableStateManager.MIGRATE_TABLE_STATE_FROM_ZK_KEY">Constant
 Field Values</a></dd>
+</dl>
 </li>
 </ul>
 <a name="lock">
@@ -280,7 +348,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>lock</h4>
-<pre>private final&nbsp;<a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReadWriteLock.html?is-external=true";
 title="class or interface in java.util.concurrent.locks">ReadWriteLock</a> <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.53">lock</a></pre>
+<pre>final&nbsp;<a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/ReadWriteLock.html?is-external=true";
 title="class or interface in java.util.concurrent.locks">ReadWriteLock</a> <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.64">lock</a></pre>
 </li>
 </ul>
 <a name="master">
@@ -289,7 +357,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>master</h4>
-<pre>private final&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in org.apache.hadoop.hbase.master">MasterServices</a> <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.54">master</a></pre>
+<pre>final&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in org.apache.hadoop.hbase.master">MasterServices</a> <a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.65">master</a></pre>
 </li>
 </ul>
 </li>
@@ -306,7 +374,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TableStateManager</h4>
-<pre>public&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.56">TableStateManager</a>(<a
 href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in 
org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;master)</pre>
+<pre>public&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.67">TableStateManager</a>(<a
 href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" 
title="interface in 
org.apache.hadoop.hbase.master">MasterServices</a>&nbsp;master)</pre>
 </li>
 </ul>
 </li>
@@ -323,7 +391,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setTableState</h4>
-<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.67">setTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.78">setTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                           <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState)
                    throws <a 
href="http://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">Set table state to provided.
@@ -343,7 +411,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setTableStateIfInStates</h4>
-<pre>public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.86">setTableStateIfInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.96">setTableStateIfInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                                 <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState,
                                                 <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)
                                          throws <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></pre>
@@ -367,7 +435,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setTableStateIfNotInStates</h4>
-<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.116">setTableStateIfNotInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.126">setTableStateIfNotInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                           <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState,
                                           <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)
                                    throws <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></pre>
@@ -389,7 +457,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isTableState</h4>
-<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.132">isTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.142">isTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                             <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)</pre>
 </li>
 </ul>
@@ -399,7 +467,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setDeletedTable</h4>
-<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.142">setDeletedTable</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.152">setDeletedTable</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                      throws <a 
href="http://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>
@@ -413,7 +481,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isTablePresent</h4>
-<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.148">isTablePresent</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+<pre>public&nbsp;boolean&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.159">isTablePresent</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                        throws <a 
href="http://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>
@@ -427,7 +495,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getTablesInStates</h4>
-<pre>public&nbsp;<a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true";
 title="class or interface in java.util">Set</a>&lt;<a 
href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.159">getTablesInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)
+<pre>public&nbsp;<a 
href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true";
 title="class or interface in java.util">Set</a>&lt;<a 
href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&gt;&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.170">getTablesInStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>...&nbsp;states)
                                  throws <a 
href="http://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">Return all tables in given states.</div>
 <dl>
@@ -447,7 +515,7 @@ extends <a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <li class="blockList">
 <h4>getTableState</h4>
 <pre>@NonNull
-public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.174">getTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.191">getTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                         throws <a 
href="http://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>
@@ -461,7 +529,7 @@ public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.St
 <ul class="blockList">
 <li class="blockList">
 <h4>updateMetaState</h4>
-<pre>protected&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.182">updateMetaState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>protected&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.199">updateMetaState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                <a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" 
title="enum in 
org.apache.hadoop.hbase.client">TableState.State</a>&nbsp;newState)
                         throws <a 
href="http://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>
@@ -477,7 +545,7 @@ public&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.St
 <li class="blockList">
 <h4>readMetaState</h4>
 <pre>@Nullable
-protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.html" 
title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.196">readMetaState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
+protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState.html" 
title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.213">readMetaState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                       throws <a 
href="http://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>
@@ -491,7 +559,7 @@ protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState
 <ul class="blockList">
 <li class="blockList">
 <h4>start</h4>
-<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.203">start</a>()
+<pre>public&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.217">start</a>()
            throws <a 
href="http://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>
@@ -502,18 +570,69 @@ protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState
 <a 
name="fixTableStates-org.apache.hadoop.hbase.TableDescriptors-org.apache.hadoop.hbase.client.Connection-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>fixTableStates</h4>
-<pre>public static&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.209">fixTableStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" 
title="interface in 
org.apache.hadoop.hbase">TableDescriptors</a>&nbsp;tableDescriptors,
-                                  <a 
href="../../../../../org/apache/hadoop/hbase/client/Connection.html" 
title="interface in 
org.apache.hadoop.hbase.client">Connection</a>&nbsp;connection)
-                           throws <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></pre>
+<pre>private&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.224">fixTableStates</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableDescriptors.html" 
title="interface in 
org.apache.hadoop.hbase">TableDescriptors</a>&nbsp;tableDescriptors,
+                            <a 
href="../../../../../org/apache/hadoop/hbase/client/Connection.html" 
title="interface in 
org.apache.hadoop.hbase.client">Connection</a>&nbsp;connection)
+                     throws <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code><a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></code></dd>
 </dl>
 </li>
 </ul>
+<a name="fixTableState-org.apache.hadoop.hbase.client.TableState-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>fixTableState</h4>
+<pre>protected&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.260">fixTableState</a>(<a
 href="../../../../../org/apache/hadoop/hbase/client/TableState.html" 
title="class in org.apache.hadoop.hbase.client">TableState</a>&nbsp;tableState)
+                      throws <a 
href="http://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">For subclasses in case they want to do fixup post 
hbase:meta.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="migrateZooKeeper--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>migrateZooKeeper</h4>
+<pre><a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true";
 title="class or interface in java.lang">@Deprecated</a>
+private&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.273">migrateZooKeeper</a>()
+                                   throws <a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span 
class="deprecationComment">Since 2.0.0. Remove in hbase-3.0.0.</span></div>
+<div class="block">This code is for case where a hbase2 Master is starting for 
the first time. ZooKeeper is
+ where we used to keep table state. On first startup, read zookeeper and 
update hbase:meta
+ with the table states found in zookeeper. This is tricky as we'll do this 
check every time we
+ startup until mirroring is disabled. See the <a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.html#MIGRATE_TABLE_STATE_FROM_ZK_KEY"><code>MIGRATE_TABLE_STATE_FROM_ZK_KEY</code></a>
 flag.
+ Original form of this migration came in with HBASE-13032. It deleted all 
znodes when done.
+ We can't do that if we want to support hbase-1.x clients who need to be able 
to read table
+ state out of zk. See <a 
href="../../../../../org/apache/hadoop/hbase/master/MirroringTableStateManager.html"
 title="class in 
org.apache.hadoop.hbase.master"><code>MirroringTableStateManager</code></a>.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a 
href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="deleteZooKeeper-org.apache.hadoop.hbase.TableName-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>deleteZooKeeper</h4>
+<pre><a 
href="http://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true";
 title="class or interface in java.lang">@Deprecated</a>
+protected&nbsp;void&nbsp;<a 
href="../../../../../src-html/org/apache/hadoop/hbase/master/TableStateManager.html#line.321">deleteZooKeeper</a>(<a
 href="../../../../../org/apache/hadoop/hbase/TableName.html" title="class in 
org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span 
class="deprecationComment">Since 2.0.0. To be removed in 
hbase-3.0.0.</span></div>
+<div class="block">Utility method that knows how to delete the old hbase-1.x 
table state znode.
+ Used also by the Mirroring subclass.</div>
+</li>
+</ul>
 </li>
 </ul>
 </li>
@@ -543,7 +662,7 @@ protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState
 <div class="subNav">
 <ul class="navList">
 <li><a 
href="../../../../../org/apache/hadoop/hbase/master/TableNamespaceManager.html" 
title="class in org.apache.hadoop.hbase.master"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li>Next&nbsp;Class</li>
+<li><a 
href="../../../../../org/apache/hadoop/hbase/master/TableStateManager.TableStateNotFoundException.html"
 title="class in org.apache.hadoop.hbase.master"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a 
href="../../../../../index.html?org/apache/hadoop/hbase/master/TableStateManager.html"
 target="_top">Frames</a></li>
@@ -567,7 +686,7 @@ protected&nbsp;<a 
href="../../../../../org/apache/hadoop/hbase/client/TableState
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>

Reply via email to