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 2018/01/10 15:31:17 UTC

[01/16] hbase-site git commit: Published site at .

Repository: hbase-site
Updated Branches:
  refs/heads/asf-site 277d50b6c -> 828b306f9


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
index 56f3e7a..98acf2d 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
@@ -42,175 +42,175 @@
 <span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.34"></a>
 <span class="sourceLineNo">035</span>import org.apache.hadoop.hbase.testclassification.ZKTests;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.junit.AfterClass;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.junit.BeforeClass;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.junit.Test;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.junit.experimental.categories.Category;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.slf4j.Logger;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.slf4j.LoggerFactory;<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.44"></a>
-<span class="sourceLineNo">045</span>public class TestZKLeaderManager {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>  private static final String LEADER_ZNODE =<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>  private static class MockAbortable implements Abortable {<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    private boolean aborted;<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>    @Override<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    public void abort(String why, Throwable e) {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      aborted = true;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      fail("Aborted during test: " + why);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    }<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>    @Override<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    public boolean isAborted() {<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      return aborted;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>  }<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    private boolean stopped;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    private ZKWatcher watcher;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    private ZKLeaderManager zkLeader;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    private int index;<a name="line.72"></a>
-<span class="sourceLineNo">073</span><a name="line.73"></a>
-<span class="sourceLineNo">074</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      setDaemon(true);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      this.index = index;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      this.watcher = watcher;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.79"></a>
-<span class="sourceLineNo">080</span>          Bytes.toBytes(index), this);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    }<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>    public boolean isMaster() {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      return master.get();<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>    public int getIndex() {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      return index;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>    public ZKWatcher getWatcher() {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>      return watcher;<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    }<a name="line.93"></a>
-<span class="sourceLineNo">094</span><a name="line.94"></a>
-<span class="sourceLineNo">095</span>    @Override<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    public void run() {<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      while (!stopped) {<a name="line.97"></a>
-<span class="sourceLineNo">098</span>        zkLeader.start();<a name="line.98"></a>
-<span class="sourceLineNo">099</span>        zkLeader.waitToBecomeLeader();<a name="line.99"></a>
-<span class="sourceLineNo">100</span>        master.set(true);<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.102"></a>
-<span class="sourceLineNo">103</span>          try {<a name="line.103"></a>
-<span class="sourceLineNo">104</span>            Thread.sleep(10);<a name="line.104"></a>
-<span class="sourceLineNo">105</span>          } catch (InterruptedException ignored) {}<a name="line.105"></a>
-<span class="sourceLineNo">106</span>        }<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      }<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    }<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>    public void abdicate() {<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      zkLeader.stepDownAsLeader();<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      master.set(false);<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    }<a name="line.113"></a>
-<span class="sourceLineNo">114</span><a name="line.114"></a>
-<span class="sourceLineNo">115</span>    @Override<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    public void stop(String why) {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      stopped = true;<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      abdicate();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      watcher.close();<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    }<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    @Override<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    public boolean isStopped() {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      return stopped;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>  }<a name="line.126"></a>
-<span class="sourceLineNo">127</span><a name="line.127"></a>
-<span class="sourceLineNo">128</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static MockLeader[] CANDIDATES;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  @BeforeClass<a name="line.131"></a>
-<span class="sourceLineNo">132</span>  public static void setupBeforeClass() throws Exception {<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    TEST_UTIL.startMiniZKCluster();<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    MockAbortable abortable = new MockAbortable();<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    CANDIDATES = new MockLeader[3];<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    for (int i = 0; i &lt; 3; i++) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      CANDIDATES[i].start();<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    }<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  @AfterClass<a name="line.147"></a>
-<span class="sourceLineNo">148</span>  public static void tearDownAfterClass() throws Exception {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @Test<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void testLeaderSelection() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    // one leader should have been found<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    assertEquals("Leader znode should match leader index",<a name="line.164"></a>
-<span class="sourceLineNo">165</span>        currentLeader.getIndex(), storedIndex);<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // force a leader transition<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    currentLeader.abdicate();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    assertFalse(currentLeader.isMaster());<a name="line.169"></a>
-<span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>    // check for new leader<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    currentLeader = getCurrentLeader();<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    // one leader should have been found<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    assertEquals("Leader znode should match leader index",<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        currentLeader.getIndex(), storedIndex);<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>    // force another transition by stopping the current<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    currentLeader.stop("Stopping for test");<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    assertFalse(currentLeader.isMaster());<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>    // check for new leader<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    currentLeader = getCurrentLeader();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    // one leader should have been found<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    assertEquals("Leader znode should match leader index",<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        currentLeader.getIndex(), storedIndex);<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    currentLeader.stop("Stopping for test");<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    assertFalse(currentLeader.isMaster());<a name="line.205"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.junit.AfterClass;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.junit.BeforeClass;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.junit.Test;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.junit.experimental.categories.Category;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.slf4j.Logger;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.slf4j.LoggerFactory;<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.45"></a>
+<span class="sourceLineNo">046</span>public class TestZKLeaderManager {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>  private static final String LEADER_ZNODE =<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>  private static class MockAbortable implements Abortable {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    private boolean aborted;<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>    @Override<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    public void abort(String why, Throwable e) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      aborted = true;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      fail("Aborted during test: " + why);<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>    @Override<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    public boolean isAborted() {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      return aborted;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    }<a name="line.65"></a>
+<span class="sourceLineNo">066</span>  }<a name="line.66"></a>
+<span class="sourceLineNo">067</span><a name="line.67"></a>
+<span class="sourceLineNo">068</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    private volatile boolean stopped;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    private ZKWatcher watcher;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    private ZKLeaderManager zkLeader;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    private int index;<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      setDaemon(true);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      this.index = index;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      this.watcher = watcher;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.80"></a>
+<span class="sourceLineNo">081</span>          Bytes.toBytes(index), this);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>    public boolean isMaster() {<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      return master.get();<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>    public int getIndex() {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      return index;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    }<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>    public ZKWatcher getWatcher() {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      return watcher;<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>    @Override<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    public void run() {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      while (!stopped) {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>        zkLeader.start();<a name="line.99"></a>
+<span class="sourceLineNo">100</span>        zkLeader.waitToBecomeLeader();<a name="line.100"></a>
+<span class="sourceLineNo">101</span>        master.set(true);<a name="line.101"></a>
+<span class="sourceLineNo">102</span><a name="line.102"></a>
+<span class="sourceLineNo">103</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>          try {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>            Thread.sleep(10);<a name="line.105"></a>
+<span class="sourceLineNo">106</span>          } catch (InterruptedException ignored) {}<a name="line.106"></a>
+<span class="sourceLineNo">107</span>        }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>      }<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    }<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>    public void abdicate() {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>      zkLeader.stepDownAsLeader();<a name="line.112"></a>
+<span class="sourceLineNo">113</span>      master.set(false);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    }<a name="line.114"></a>
+<span class="sourceLineNo">115</span><a name="line.115"></a>
+<span class="sourceLineNo">116</span>    @Override<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    public void stop(String why) {<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      stopped = true;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      abdicate();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      Threads.sleep(100);<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      watcher.close();<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    }<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>    @Override<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    public boolean isStopped() {<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      return stopped;<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static MockLeader[] CANDIDATES;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @BeforeClass<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  public static void setupBeforeClass() throws Exception {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    TEST_UTIL.startMiniZKCluster();<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.137"></a>
+<span class="sourceLineNo">138</span><a name="line.138"></a>
+<span class="sourceLineNo">139</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    MockAbortable abortable = new MockAbortable();<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    int count = 5;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    CANDIDATES = new MockLeader[count];<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    for (int i = 0; i &lt; count; i++) {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>      CANDIDATES[i].start();<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>  @AfterClass<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  public static void tearDownAfterClass() throws Exception {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.152"></a>
+<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>  @Test<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public void testLeaderSelection() throws Exception {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    // one leader should have been found<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    assertEquals("Leader znode should match leader index",<a name="line.167"></a>
+<span class="sourceLineNo">168</span>        currentLeader.getIndex(), storedIndex);<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>    // force a leader transition<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    currentLeader.abdicate();<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>    // check for new leader<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    currentLeader = getCurrentLeader();<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    // one leader should have been found<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.177"></a>
+<span class="sourceLineNo">178</span><a name="line.178"></a>
+<span class="sourceLineNo">179</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    assertEquals("Leader znode should match leader index",<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        currentLeader.getIndex(), storedIndex);<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>    // force another transition by stopping the current<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    currentLeader.stop("Stopping for test");<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>    // check for new leader<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    currentLeader = getCurrentLeader();<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    // one leader should have been found<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    assertEquals("Leader znode should match leader index",<a name="line.201"></a>
+<span class="sourceLineNo">202</span>        currentLeader.getIndex(), storedIndex);<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    currentLeader.stop("Stopping for test");<a name="line.205"></a>
 <span class="sourceLineNo">206</span><a name="line.206"></a>
 <span class="sourceLineNo">207</span>    // check for new<a name="line.207"></a>
 <span class="sourceLineNo">208</span>    currentLeader = getCurrentLeader();<a name="line.208"></a>
@@ -234,7 +234,7 @@
 <span class="sourceLineNo">226</span>      if (currentLeader != null) {<a name="line.226"></a>
 <span class="sourceLineNo">227</span>        break outer;<a name="line.227"></a>
 <span class="sourceLineNo">228</span>      }<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      Thread.sleep(10);<a name="line.229"></a>
+<span class="sourceLineNo">229</span>      Threads.sleep(100);<a name="line.229"></a>
 <span class="sourceLineNo">230</span>    }<a name="line.230"></a>
 <span class="sourceLineNo">231</span>    return currentLeader;<a name="line.231"></a>
 <span class="sourceLineNo">232</span>  }<a name="line.232"></a>


[11/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
----------------------------------------------------------------------
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
index 4f74984..fa489c5 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
@@ -46,37 +46,37 @@
 <span class="sourceLineNo">038</span>import java.util.Map;<a name="line.38"></a>
 <span class="sourceLineNo">039</span>import java.util.Map.Entry;<a name="line.39"></a>
 <span class="sourceLineNo">040</span>import java.util.Objects;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.Optional;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.Set;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import java.util.concurrent.ExecutionException;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import java.util.concurrent.Future;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import java.util.concurrent.TimeUnit;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import java.util.concurrent.TimeoutException;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import java.util.function.Function;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import java.util.regex.Pattern;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import java.util.stream.Collectors;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import javax.servlet.ServletException;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServlet;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletRequest;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import javax.servlet.http.HttpServletResponse;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.conf.Configuration;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.fs.Path;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.HConstants;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.71"></a>
+<span class="sourceLineNo">041</span>import java.util.Set;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.concurrent.CountDownLatch;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.ExecutionException;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.Future;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import java.util.concurrent.TimeUnit;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import java.util.concurrent.TimeoutException;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import java.util.function.Function;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import java.util.regex.Pattern;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import java.util.stream.Collectors;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import javax.servlet.ServletException;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import javax.servlet.http.HttpServlet;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServletRequest;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletResponse;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.conf.Configuration;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.fs.Path;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HConstants;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.ReplicationPeerNotFoundException;<a name="line.71"></a>
 <span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.ServerLoad;<a name="line.72"></a>
 <span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.ServerMetricsBuilder;<a name="line.73"></a>
 <span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.ServerName;<a name="line.74"></a>
@@ -3350,186 +3350,185 @@
 <span class="sourceLineNo">3342</span>      cpHost.preGetReplicationPeerConfig(peerId);<a name="line.3342"></a>
 <span class="sourceLineNo">3343</span>    }<a name="line.3343"></a>
 <span class="sourceLineNo">3344</span>    LOG.info(getClientIdAuditPrefix() + " get replication peer config, id=" + peerId);<a name="line.3344"></a>
-<span class="sourceLineNo">3345</span>    Optional&lt;ReplicationPeerConfig&gt; peerConfig =<a name="line.3345"></a>
-<span class="sourceLineNo">3346</span>      this.replicationPeerManager.getPeerConfig(peerId);<a name="line.3346"></a>
-<span class="sourceLineNo">3347</span><a name="line.3347"></a>
-<span class="sourceLineNo">3348</span>    if (cpHost != null) {<a name="line.3348"></a>
-<span class="sourceLineNo">3349</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3349"></a>
-<span class="sourceLineNo">3350</span>    }<a name="line.3350"></a>
-<span class="sourceLineNo">3351</span>    return peerConfig.orElse(null);<a name="line.3351"></a>
-<span class="sourceLineNo">3352</span>  }<a name="line.3352"></a>
-<span class="sourceLineNo">3353</span><a name="line.3353"></a>
-<span class="sourceLineNo">3354</span>  @Override<a name="line.3354"></a>
-<span class="sourceLineNo">3355</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3355"></a>
-<span class="sourceLineNo">3356</span>      throws ReplicationException, IOException {<a name="line.3356"></a>
-<span class="sourceLineNo">3357</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3357"></a>
-<span class="sourceLineNo">3358</span>      ", config=" + peerConfig);<a name="line.3358"></a>
-<span class="sourceLineNo">3359</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3359"></a>
-<span class="sourceLineNo">3360</span>  }<a name="line.3360"></a>
-<span class="sourceLineNo">3361</span><a name="line.3361"></a>
-<span class="sourceLineNo">3362</span>  @Override<a name="line.3362"></a>
-<span class="sourceLineNo">3363</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3363"></a>
-<span class="sourceLineNo">3364</span>      throws ReplicationException, IOException {<a name="line.3364"></a>
-<span class="sourceLineNo">3365</span>    if (cpHost != null) {<a name="line.3365"></a>
-<span class="sourceLineNo">3366</span>      cpHost.preListReplicationPeers(regex);<a name="line.3366"></a>
-<span class="sourceLineNo">3367</span>    }<a name="line.3367"></a>
-<span class="sourceLineNo">3368</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3368"></a>
-<span class="sourceLineNo">3369</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3369"></a>
-<span class="sourceLineNo">3370</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3370"></a>
-<span class="sourceLineNo">3371</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3371"></a>
-<span class="sourceLineNo">3372</span>    if (cpHost != null) {<a name="line.3372"></a>
-<span class="sourceLineNo">3373</span>      cpHost.postListReplicationPeers(regex);<a name="line.3373"></a>
-<span class="sourceLineNo">3374</span>    }<a name="line.3374"></a>
-<span class="sourceLineNo">3375</span>    return peers;<a name="line.3375"></a>
-<span class="sourceLineNo">3376</span>  }<a name="line.3376"></a>
-<span class="sourceLineNo">3377</span><a name="line.3377"></a>
-<span class="sourceLineNo">3378</span>  /**<a name="line.3378"></a>
-<span class="sourceLineNo">3379</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3379"></a>
-<span class="sourceLineNo">3380</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3380"></a>
-<span class="sourceLineNo">3381</span>   * @param servers Region servers to decommission.<a name="line.3381"></a>
-<span class="sourceLineNo">3382</span>   * @throws HBaseIOException<a name="line.3382"></a>
-<span class="sourceLineNo">3383</span>   */<a name="line.3383"></a>
-<span class="sourceLineNo">3384</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3384"></a>
-<span class="sourceLineNo">3385</span>      throws HBaseIOException {<a name="line.3385"></a>
-<span class="sourceLineNo">3386</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3386"></a>
-<span class="sourceLineNo">3387</span>    // Place the decommission marker first.<a name="line.3387"></a>
-<span class="sourceLineNo">3388</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3388"></a>
-<span class="sourceLineNo">3389</span>    for (ServerName server : servers) {<a name="line.3389"></a>
-<span class="sourceLineNo">3390</span>      try {<a name="line.3390"></a>
-<span class="sourceLineNo">3391</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3391"></a>
-<span class="sourceLineNo">3392</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3392"></a>
-<span class="sourceLineNo">3393</span>      } catch (KeeperException ke) {<a name="line.3393"></a>
-<span class="sourceLineNo">3394</span>        throw new HBaseIOException(<a name="line.3394"></a>
-<span class="sourceLineNo">3395</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3395"></a>
-<span class="sourceLineNo">3396</span>      }<a name="line.3396"></a>
-<span class="sourceLineNo">3397</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3397"></a>
-<span class="sourceLineNo">3398</span>        serversAdded.add(server);<a name="line.3398"></a>
-<span class="sourceLineNo">3399</span>      }<a name="line.3399"></a>
-<span class="sourceLineNo">3400</span>    }<a name="line.3400"></a>
-<span class="sourceLineNo">3401</span>    // Move the regions off the decommissioned servers.<a name="line.3401"></a>
-<span class="sourceLineNo">3402</span>    if (offload) {<a name="line.3402"></a>
-<span class="sourceLineNo">3403</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3403"></a>
-<span class="sourceLineNo">3404</span>      for (ServerName server : serversAdded) {<a name="line.3404"></a>
-<span class="sourceLineNo">3405</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3405"></a>
-<span class="sourceLineNo">3406</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3406"></a>
-<span class="sourceLineNo">3407</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3407"></a>
-<span class="sourceLineNo">3408</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3408"></a>
-<span class="sourceLineNo">3409</span>          if (dest == null) {<a name="line.3409"></a>
-<span class="sourceLineNo">3410</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3410"></a>
-<span class="sourceLineNo">3411</span>          }<a name="line.3411"></a>
-<span class="sourceLineNo">3412</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3412"></a>
-<span class="sourceLineNo">3413</span>          this.assignmentManager.moveAsync(rp);<a name="line.3413"></a>
-<span class="sourceLineNo">3414</span>        }<a name="line.3414"></a>
-<span class="sourceLineNo">3415</span>      }<a name="line.3415"></a>
-<span class="sourceLineNo">3416</span>    }<a name="line.3416"></a>
-<span class="sourceLineNo">3417</span>  }<a name="line.3417"></a>
-<span class="sourceLineNo">3418</span><a name="line.3418"></a>
-<span class="sourceLineNo">3419</span>  /**<a name="line.3419"></a>
-<span class="sourceLineNo">3420</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3420"></a>
-<span class="sourceLineNo">3421</span>   * assigned to them.<a name="line.3421"></a>
-<span class="sourceLineNo">3422</span>   * @return List of decommissioned servers.<a name="line.3422"></a>
-<span class="sourceLineNo">3423</span>   */<a name="line.3423"></a>
-<span class="sourceLineNo">3424</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3424"></a>
-<span class="sourceLineNo">3425</span>    return this.serverManager.getDrainingServersList();<a name="line.3425"></a>
-<span class="sourceLineNo">3426</span>  }<a name="line.3426"></a>
-<span class="sourceLineNo">3427</span><a name="line.3427"></a>
-<span class="sourceLineNo">3428</span>  /**<a name="line.3428"></a>
-<span class="sourceLineNo">3429</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3429"></a>
-<span class="sourceLineNo">3430</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3430"></a>
-<span class="sourceLineNo">3431</span>   * @param server Region server to remove decommission marker from.<a name="line.3431"></a>
-<span class="sourceLineNo">3432</span>   * @throws HBaseIOException<a name="line.3432"></a>
-<span class="sourceLineNo">3433</span>   */<a name="line.3433"></a>
-<span class="sourceLineNo">3434</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3434"></a>
-<span class="sourceLineNo">3435</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3435"></a>
-<span class="sourceLineNo">3436</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3436"></a>
-<span class="sourceLineNo">3437</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3437"></a>
-<span class="sourceLineNo">3438</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3438"></a>
-<span class="sourceLineNo">3439</span>    try {<a name="line.3439"></a>
-<span class="sourceLineNo">3440</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3440"></a>
-<span class="sourceLineNo">3441</span>    } catch (KeeperException ke) {<a name="line.3441"></a>
-<span class="sourceLineNo">3442</span>      throw new HBaseIOException(<a name="line.3442"></a>
-<span class="sourceLineNo">3443</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3443"></a>
-<span class="sourceLineNo">3444</span>    }<a name="line.3444"></a>
-<span class="sourceLineNo">3445</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3445"></a>
-<span class="sourceLineNo">3446</span><a name="line.3446"></a>
-<span class="sourceLineNo">3447</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3447"></a>
-<span class="sourceLineNo">3448</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3448"></a>
-<span class="sourceLineNo">3449</span>      return;<a name="line.3449"></a>
-<span class="sourceLineNo">3450</span>    }<a name="line.3450"></a>
-<span class="sourceLineNo">3451</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3451"></a>
-<span class="sourceLineNo">3452</span>      return;<a name="line.3452"></a>
-<span class="sourceLineNo">3453</span>    }<a name="line.3453"></a>
-<span class="sourceLineNo">3454</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3454"></a>
-<span class="sourceLineNo">3455</span>      RegionState regionState =<a name="line.3455"></a>
-<span class="sourceLineNo">3456</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3456"></a>
-<span class="sourceLineNo">3457</span>      if (regionState == null) {<a name="line.3457"></a>
-<span class="sourceLineNo">3458</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3458"></a>
-<span class="sourceLineNo">3459</span>        continue;<a name="line.3459"></a>
-<span class="sourceLineNo">3460</span>      }<a name="line.3460"></a>
-<span class="sourceLineNo">3461</span>      RegionInfo hri = regionState.getRegion();<a name="line.3461"></a>
-<span class="sourceLineNo">3462</span>      if (server.equals(regionState.getServerName())) {<a name="line.3462"></a>
-<span class="sourceLineNo">3463</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3463"></a>
-<span class="sourceLineNo">3464</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3464"></a>
-<span class="sourceLineNo">3465</span>        continue;<a name="line.3465"></a>
-<span class="sourceLineNo">3466</span>      }<a name="line.3466"></a>
-<span class="sourceLineNo">3467</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3467"></a>
-<span class="sourceLineNo">3468</span>      this.assignmentManager.moveAsync(rp);<a name="line.3468"></a>
-<span class="sourceLineNo">3469</span>    }<a name="line.3469"></a>
-<span class="sourceLineNo">3470</span>  }<a name="line.3470"></a>
-<span class="sourceLineNo">3471</span><a name="line.3471"></a>
-<span class="sourceLineNo">3472</span>  @Override<a name="line.3472"></a>
-<span class="sourceLineNo">3473</span>  public LockManager getLockManager() {<a name="line.3473"></a>
-<span class="sourceLineNo">3474</span>    return lockManager;<a name="line.3474"></a>
-<span class="sourceLineNo">3475</span>  }<a name="line.3475"></a>
-<span class="sourceLineNo">3476</span><a name="line.3476"></a>
-<span class="sourceLineNo">3477</span>  @Override<a name="line.3477"></a>
-<span class="sourceLineNo">3478</span>  public boolean recoverMeta() throws IOException {<a name="line.3478"></a>
-<span class="sourceLineNo">3479</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3479"></a>
-<span class="sourceLineNo">3480</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3480"></a>
-<span class="sourceLineNo">3481</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3481"></a>
-<span class="sourceLineNo">3482</span>    latch.await();<a name="line.3482"></a>
-<span class="sourceLineNo">3483</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3483"></a>
-<span class="sourceLineNo">3484</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3484"></a>
-<span class="sourceLineNo">3485</span>    return assignmentManager.isMetaInitialized();<a name="line.3485"></a>
-<span class="sourceLineNo">3486</span>  }<a name="line.3486"></a>
-<span class="sourceLineNo">3487</span><a name="line.3487"></a>
-<span class="sourceLineNo">3488</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3488"></a>
-<span class="sourceLineNo">3489</span>    return this.quotaObserverChore;<a name="line.3489"></a>
-<span class="sourceLineNo">3490</span>  }<a name="line.3490"></a>
-<span class="sourceLineNo">3491</span><a name="line.3491"></a>
-<span class="sourceLineNo">3492</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3492"></a>
-<span class="sourceLineNo">3493</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3493"></a>
-<span class="sourceLineNo">3494</span>  }<a name="line.3494"></a>
-<span class="sourceLineNo">3495</span><a name="line.3495"></a>
-<span class="sourceLineNo">3496</span>  @SuppressWarnings("unchecked")<a name="line.3496"></a>
-<span class="sourceLineNo">3497</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3497"></a>
-<span class="sourceLineNo">3498</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3498"></a>
-<span class="sourceLineNo">3499</span>    if (procedure == null) {<a name="line.3499"></a>
-<span class="sourceLineNo">3500</span>      return null;<a name="line.3500"></a>
-<span class="sourceLineNo">3501</span>    }<a name="line.3501"></a>
-<span class="sourceLineNo">3502</span>    assert procedure instanceof RemoteProcedure;<a name="line.3502"></a>
-<span class="sourceLineNo">3503</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3503"></a>
-<span class="sourceLineNo">3504</span>  }<a name="line.3504"></a>
-<span class="sourceLineNo">3505</span><a name="line.3505"></a>
-<span class="sourceLineNo">3506</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3506"></a>
-<span class="sourceLineNo">3507</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3507"></a>
-<span class="sourceLineNo">3508</span>    if (procedure != null) {<a name="line.3508"></a>
-<span class="sourceLineNo">3509</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3509"></a>
-<span class="sourceLineNo">3510</span>    }<a name="line.3510"></a>
-<span class="sourceLineNo">3511</span>  }<a name="line.3511"></a>
-<span class="sourceLineNo">3512</span><a name="line.3512"></a>
-<span class="sourceLineNo">3513</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3513"></a>
-<span class="sourceLineNo">3514</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3514"></a>
-<span class="sourceLineNo">3515</span>    if (procedure != null) {<a name="line.3515"></a>
-<span class="sourceLineNo">3516</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3516"></a>
-<span class="sourceLineNo">3517</span>    }<a name="line.3517"></a>
-<span class="sourceLineNo">3518</span>  }<a name="line.3518"></a>
-<span class="sourceLineNo">3519</span><a name="line.3519"></a>
-<span class="sourceLineNo">3520</span>  @Override<a name="line.3520"></a>
-<span class="sourceLineNo">3521</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3521"></a>
-<span class="sourceLineNo">3522</span>    return replicationPeerManager;<a name="line.3522"></a>
-<span class="sourceLineNo">3523</span>  }<a name="line.3523"></a>
-<span class="sourceLineNo">3524</span>}<a name="line.3524"></a>
+<span class="sourceLineNo">3345</span>    ReplicationPeerConfig peerConfig = this.replicationPeerManager.getPeerConfig(peerId)<a name="line.3345"></a>
+<span class="sourceLineNo">3346</span>        .orElseThrow(() -&gt; new ReplicationPeerNotFoundException(peerId));<a name="line.3346"></a>
+<span class="sourceLineNo">3347</span>    if (cpHost != null) {<a name="line.3347"></a>
+<span class="sourceLineNo">3348</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3348"></a>
+<span class="sourceLineNo">3349</span>    }<a name="line.3349"></a>
+<span class="sourceLineNo">3350</span>    return peerConfig;<a name="line.3350"></a>
+<span class="sourceLineNo">3351</span>  }<a name="line.3351"></a>
+<span class="sourceLineNo">3352</span><a name="line.3352"></a>
+<span class="sourceLineNo">3353</span>  @Override<a name="line.3353"></a>
+<span class="sourceLineNo">3354</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3354"></a>
+<span class="sourceLineNo">3355</span>      throws ReplicationException, IOException {<a name="line.3355"></a>
+<span class="sourceLineNo">3356</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3356"></a>
+<span class="sourceLineNo">3357</span>      ", config=" + peerConfig);<a name="line.3357"></a>
+<span class="sourceLineNo">3358</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3358"></a>
+<span class="sourceLineNo">3359</span>  }<a name="line.3359"></a>
+<span class="sourceLineNo">3360</span><a name="line.3360"></a>
+<span class="sourceLineNo">3361</span>  @Override<a name="line.3361"></a>
+<span class="sourceLineNo">3362</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3362"></a>
+<span class="sourceLineNo">3363</span>      throws ReplicationException, IOException {<a name="line.3363"></a>
+<span class="sourceLineNo">3364</span>    if (cpHost != null) {<a name="line.3364"></a>
+<span class="sourceLineNo">3365</span>      cpHost.preListReplicationPeers(regex);<a name="line.3365"></a>
+<span class="sourceLineNo">3366</span>    }<a name="line.3366"></a>
+<span class="sourceLineNo">3367</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3367"></a>
+<span class="sourceLineNo">3368</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3368"></a>
+<span class="sourceLineNo">3369</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3369"></a>
+<span class="sourceLineNo">3370</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3370"></a>
+<span class="sourceLineNo">3371</span>    if (cpHost != null) {<a name="line.3371"></a>
+<span class="sourceLineNo">3372</span>      cpHost.postListReplicationPeers(regex);<a name="line.3372"></a>
+<span class="sourceLineNo">3373</span>    }<a name="line.3373"></a>
+<span class="sourceLineNo">3374</span>    return peers;<a name="line.3374"></a>
+<span class="sourceLineNo">3375</span>  }<a name="line.3375"></a>
+<span class="sourceLineNo">3376</span><a name="line.3376"></a>
+<span class="sourceLineNo">3377</span>  /**<a name="line.3377"></a>
+<span class="sourceLineNo">3378</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3378"></a>
+<span class="sourceLineNo">3379</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3379"></a>
+<span class="sourceLineNo">3380</span>   * @param servers Region servers to decommission.<a name="line.3380"></a>
+<span class="sourceLineNo">3381</span>   * @throws HBaseIOException<a name="line.3381"></a>
+<span class="sourceLineNo">3382</span>   */<a name="line.3382"></a>
+<span class="sourceLineNo">3383</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3383"></a>
+<span class="sourceLineNo">3384</span>      throws HBaseIOException {<a name="line.3384"></a>
+<span class="sourceLineNo">3385</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3385"></a>
+<span class="sourceLineNo">3386</span>    // Place the decommission marker first.<a name="line.3386"></a>
+<span class="sourceLineNo">3387</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3387"></a>
+<span class="sourceLineNo">3388</span>    for (ServerName server : servers) {<a name="line.3388"></a>
+<span class="sourceLineNo">3389</span>      try {<a name="line.3389"></a>
+<span class="sourceLineNo">3390</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3390"></a>
+<span class="sourceLineNo">3391</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3391"></a>
+<span class="sourceLineNo">3392</span>      } catch (KeeperException ke) {<a name="line.3392"></a>
+<span class="sourceLineNo">3393</span>        throw new HBaseIOException(<a name="line.3393"></a>
+<span class="sourceLineNo">3394</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3394"></a>
+<span class="sourceLineNo">3395</span>      }<a name="line.3395"></a>
+<span class="sourceLineNo">3396</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3396"></a>
+<span class="sourceLineNo">3397</span>        serversAdded.add(server);<a name="line.3397"></a>
+<span class="sourceLineNo">3398</span>      }<a name="line.3398"></a>
+<span class="sourceLineNo">3399</span>    }<a name="line.3399"></a>
+<span class="sourceLineNo">3400</span>    // Move the regions off the decommissioned servers.<a name="line.3400"></a>
+<span class="sourceLineNo">3401</span>    if (offload) {<a name="line.3401"></a>
+<span class="sourceLineNo">3402</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3402"></a>
+<span class="sourceLineNo">3403</span>      for (ServerName server : serversAdded) {<a name="line.3403"></a>
+<span class="sourceLineNo">3404</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3404"></a>
+<span class="sourceLineNo">3405</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3405"></a>
+<span class="sourceLineNo">3406</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3406"></a>
+<span class="sourceLineNo">3407</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3407"></a>
+<span class="sourceLineNo">3408</span>          if (dest == null) {<a name="line.3408"></a>
+<span class="sourceLineNo">3409</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3409"></a>
+<span class="sourceLineNo">3410</span>          }<a name="line.3410"></a>
+<span class="sourceLineNo">3411</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3411"></a>
+<span class="sourceLineNo">3412</span>          this.assignmentManager.moveAsync(rp);<a name="line.3412"></a>
+<span class="sourceLineNo">3413</span>        }<a name="line.3413"></a>
+<span class="sourceLineNo">3414</span>      }<a name="line.3414"></a>
+<span class="sourceLineNo">3415</span>    }<a name="line.3415"></a>
+<span class="sourceLineNo">3416</span>  }<a name="line.3416"></a>
+<span class="sourceLineNo">3417</span><a name="line.3417"></a>
+<span class="sourceLineNo">3418</span>  /**<a name="line.3418"></a>
+<span class="sourceLineNo">3419</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3419"></a>
+<span class="sourceLineNo">3420</span>   * assigned to them.<a name="line.3420"></a>
+<span class="sourceLineNo">3421</span>   * @return List of decommissioned servers.<a name="line.3421"></a>
+<span class="sourceLineNo">3422</span>   */<a name="line.3422"></a>
+<span class="sourceLineNo">3423</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3423"></a>
+<span class="sourceLineNo">3424</span>    return this.serverManager.getDrainingServersList();<a name="line.3424"></a>
+<span class="sourceLineNo">3425</span>  }<a name="line.3425"></a>
+<span class="sourceLineNo">3426</span><a name="line.3426"></a>
+<span class="sourceLineNo">3427</span>  /**<a name="line.3427"></a>
+<span class="sourceLineNo">3428</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3428"></a>
+<span class="sourceLineNo">3429</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3429"></a>
+<span class="sourceLineNo">3430</span>   * @param server Region server to remove decommission marker from.<a name="line.3430"></a>
+<span class="sourceLineNo">3431</span>   * @throws HBaseIOException<a name="line.3431"></a>
+<span class="sourceLineNo">3432</span>   */<a name="line.3432"></a>
+<span class="sourceLineNo">3433</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3433"></a>
+<span class="sourceLineNo">3434</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3434"></a>
+<span class="sourceLineNo">3435</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3435"></a>
+<span class="sourceLineNo">3436</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3436"></a>
+<span class="sourceLineNo">3437</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3437"></a>
+<span class="sourceLineNo">3438</span>    try {<a name="line.3438"></a>
+<span class="sourceLineNo">3439</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3439"></a>
+<span class="sourceLineNo">3440</span>    } catch (KeeperException ke) {<a name="line.3440"></a>
+<span class="sourceLineNo">3441</span>      throw new HBaseIOException(<a name="line.3441"></a>
+<span class="sourceLineNo">3442</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3442"></a>
+<span class="sourceLineNo">3443</span>    }<a name="line.3443"></a>
+<span class="sourceLineNo">3444</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3444"></a>
+<span class="sourceLineNo">3445</span><a name="line.3445"></a>
+<span class="sourceLineNo">3446</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3446"></a>
+<span class="sourceLineNo">3447</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3447"></a>
+<span class="sourceLineNo">3448</span>      return;<a name="line.3448"></a>
+<span class="sourceLineNo">3449</span>    }<a name="line.3449"></a>
+<span class="sourceLineNo">3450</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3450"></a>
+<span class="sourceLineNo">3451</span>      return;<a name="line.3451"></a>
+<span class="sourceLineNo">3452</span>    }<a name="line.3452"></a>
+<span class="sourceLineNo">3453</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3453"></a>
+<span class="sourceLineNo">3454</span>      RegionState regionState =<a name="line.3454"></a>
+<span class="sourceLineNo">3455</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3455"></a>
+<span class="sourceLineNo">3456</span>      if (regionState == null) {<a name="line.3456"></a>
+<span class="sourceLineNo">3457</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3457"></a>
+<span class="sourceLineNo">3458</span>        continue;<a name="line.3458"></a>
+<span class="sourceLineNo">3459</span>      }<a name="line.3459"></a>
+<span class="sourceLineNo">3460</span>      RegionInfo hri = regionState.getRegion();<a name="line.3460"></a>
+<span class="sourceLineNo">3461</span>      if (server.equals(regionState.getServerName())) {<a name="line.3461"></a>
+<span class="sourceLineNo">3462</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3462"></a>
+<span class="sourceLineNo">3463</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3463"></a>
+<span class="sourceLineNo">3464</span>        continue;<a name="line.3464"></a>
+<span class="sourceLineNo">3465</span>      }<a name="line.3465"></a>
+<span class="sourceLineNo">3466</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3466"></a>
+<span class="sourceLineNo">3467</span>      this.assignmentManager.moveAsync(rp);<a name="line.3467"></a>
+<span class="sourceLineNo">3468</span>    }<a name="line.3468"></a>
+<span class="sourceLineNo">3469</span>  }<a name="line.3469"></a>
+<span class="sourceLineNo">3470</span><a name="line.3470"></a>
+<span class="sourceLineNo">3471</span>  @Override<a name="line.3471"></a>
+<span class="sourceLineNo">3472</span>  public LockManager getLockManager() {<a name="line.3472"></a>
+<span class="sourceLineNo">3473</span>    return lockManager;<a name="line.3473"></a>
+<span class="sourceLineNo">3474</span>  }<a name="line.3474"></a>
+<span class="sourceLineNo">3475</span><a name="line.3475"></a>
+<span class="sourceLineNo">3476</span>  @Override<a name="line.3476"></a>
+<span class="sourceLineNo">3477</span>  public boolean recoverMeta() throws IOException {<a name="line.3477"></a>
+<span class="sourceLineNo">3478</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3478"></a>
+<span class="sourceLineNo">3479</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3479"></a>
+<span class="sourceLineNo">3480</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3480"></a>
+<span class="sourceLineNo">3481</span>    latch.await();<a name="line.3481"></a>
+<span class="sourceLineNo">3482</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3482"></a>
+<span class="sourceLineNo">3483</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3483"></a>
+<span class="sourceLineNo">3484</span>    return assignmentManager.isMetaInitialized();<a name="line.3484"></a>
+<span class="sourceLineNo">3485</span>  }<a name="line.3485"></a>
+<span class="sourceLineNo">3486</span><a name="line.3486"></a>
+<span class="sourceLineNo">3487</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3487"></a>
+<span class="sourceLineNo">3488</span>    return this.quotaObserverChore;<a name="line.3488"></a>
+<span class="sourceLineNo">3489</span>  }<a name="line.3489"></a>
+<span class="sourceLineNo">3490</span><a name="line.3490"></a>
+<span class="sourceLineNo">3491</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3491"></a>
+<span class="sourceLineNo">3492</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3492"></a>
+<span class="sourceLineNo">3493</span>  }<a name="line.3493"></a>
+<span class="sourceLineNo">3494</span><a name="line.3494"></a>
+<span class="sourceLineNo">3495</span>  @SuppressWarnings("unchecked")<a name="line.3495"></a>
+<span class="sourceLineNo">3496</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3496"></a>
+<span class="sourceLineNo">3497</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3497"></a>
+<span class="sourceLineNo">3498</span>    if (procedure == null) {<a name="line.3498"></a>
+<span class="sourceLineNo">3499</span>      return null;<a name="line.3499"></a>
+<span class="sourceLineNo">3500</span>    }<a name="line.3500"></a>
+<span class="sourceLineNo">3501</span>    assert procedure instanceof RemoteProcedure;<a name="line.3501"></a>
+<span class="sourceLineNo">3502</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3502"></a>
+<span class="sourceLineNo">3503</span>  }<a name="line.3503"></a>
+<span class="sourceLineNo">3504</span><a name="line.3504"></a>
+<span class="sourceLineNo">3505</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3505"></a>
+<span class="sourceLineNo">3506</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3506"></a>
+<span class="sourceLineNo">3507</span>    if (procedure != null) {<a name="line.3507"></a>
+<span class="sourceLineNo">3508</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3508"></a>
+<span class="sourceLineNo">3509</span>    }<a name="line.3509"></a>
+<span class="sourceLineNo">3510</span>  }<a name="line.3510"></a>
+<span class="sourceLineNo">3511</span><a name="line.3511"></a>
+<span class="sourceLineNo">3512</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3512"></a>
+<span class="sourceLineNo">3513</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3513"></a>
+<span class="sourceLineNo">3514</span>    if (procedure != null) {<a name="line.3514"></a>
+<span class="sourceLineNo">3515</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3515"></a>
+<span class="sourceLineNo">3516</span>    }<a name="line.3516"></a>
+<span class="sourceLineNo">3517</span>  }<a name="line.3517"></a>
+<span class="sourceLineNo">3518</span><a name="line.3518"></a>
+<span class="sourceLineNo">3519</span>  @Override<a name="line.3519"></a>
+<span class="sourceLineNo">3520</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3520"></a>
+<span class="sourceLineNo">3521</span>    return replicationPeerManager;<a name="line.3521"></a>
+<span class="sourceLineNo">3522</span>  }<a name="line.3522"></a>
+<span class="sourceLineNo">3523</span>}<a name="line.3523"></a>
 
 
 


[03/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
index 66b2fdf..1d3aed7 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
@@ -31,359 +31,311 @@
 <span class="sourceLineNo">023</span>import static org.junit.Assert.assertEquals;<a name="line.23"></a>
 <span class="sourceLineNo">024</span>import static org.junit.Assert.assertTrue;<a name="line.24"></a>
 <span class="sourceLineNo">025</span><a name="line.25"></a>
-<span class="sourceLineNo">026</span>import java.io.IOException;<a name="line.26"></a>
-<span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>import org.apache.hadoop.conf.Configuration;<a name="line.28"></a>
-<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.HBaseTestingUtility;<a name="line.29"></a>
-<span class="sourceLineNo">030</span>import org.apache.hadoop.hbase.HConstants;<a name="line.30"></a>
-<span class="sourceLineNo">031</span>import org.apache.hadoop.hbase.TableName;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>import org.apache.hadoop.hbase.TableNotFoundException;<a name="line.32"></a>
-<span class="sourceLineNo">033</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.33"></a>
-<span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.client.Connection;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.35"></a>
-<span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.master.MasterCoprocessorHost;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.security.User;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.security.access.AccessControlClient;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.security.access.AccessControlLists;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.security.access.Permission;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.security.access.SecureTestUtil;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import org.apache.hadoop.hbase.security.access.TableAuthManager;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import org.apache.hadoop.hbase.testclassification.SecurityTests;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import org.junit.AfterClass;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import org.junit.BeforeClass;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import org.junit.Rule;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import org.junit.Test;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import org.junit.experimental.categories.Category;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import org.junit.rules.TestName;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import org.slf4j.Logger;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import org.slf4j.LoggerFactory;<a name="line.54"></a>
-<span class="sourceLineNo">055</span><a name="line.55"></a>
-<span class="sourceLineNo">056</span>@Category({SecurityTests.class})<a name="line.56"></a>
-<span class="sourceLineNo">057</span>public class TestRSGroupsWithACL {<a name="line.57"></a>
-<span class="sourceLineNo">058</span>  private static final Logger LOG = LoggerFactory.getLogger(TestRSGroupsWithACL.class);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>  private static TableName TEST_TABLE = TableName.valueOf("testtable1");<a name="line.59"></a>
-<span class="sourceLineNo">060</span>  private static final HBaseTestingUtility TEST_UTIL = new HBaseTestingUtility();<a name="line.60"></a>
-<span class="sourceLineNo">061</span>  private static Configuration conf;<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>  private static Connection systemUserConnection;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  // user with all permissions<a name="line.64"></a>
-<span class="sourceLineNo">065</span>  private static User SUPERUSER;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>  // user granted with all global permission<a name="line.66"></a>
-<span class="sourceLineNo">067</span>  private static User USER_ADMIN;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>  // user with rw permissions on column family.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>  private static User USER_RW;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>  // user with read-only permissions<a name="line.70"></a>
-<span class="sourceLineNo">071</span>  private static User USER_RO;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>  // user is table owner. will have all permissions on table<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  private static User USER_OWNER;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>  // user with create table permissions alone<a name="line.74"></a>
-<span class="sourceLineNo">075</span>  private static User USER_CREATE;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>  // user with no permissions<a name="line.76"></a>
-<span class="sourceLineNo">077</span>  private static User USER_NONE;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>  // user with admin rights on the column family<a name="line.78"></a>
-<span class="sourceLineNo">079</span>  private static User USER_ADMIN_CF;<a name="line.79"></a>
-<span class="sourceLineNo">080</span><a name="line.80"></a>
-<span class="sourceLineNo">081</span>  private static final String GROUP_ADMIN = "group_admin";<a name="line.81"></a>
-<span class="sourceLineNo">082</span>  private static final String GROUP_CREATE = "group_create";<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  private static final String GROUP_READ = "group_read";<a name="line.83"></a>
-<span class="sourceLineNo">084</span>  private static final String GROUP_WRITE = "group_write";<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>  private static User USER_GROUP_ADMIN;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>  private static User USER_GROUP_CREATE;<a name="line.87"></a>
-<span class="sourceLineNo">088</span>  private static User USER_GROUP_READ;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>  private static User USER_GROUP_WRITE;<a name="line.89"></a>
+<span class="sourceLineNo">026</span>import org.apache.hadoop.conf.Configuration;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>import org.apache.hadoop.hbase.HBaseTestingUtility;<a name="line.27"></a>
+<span class="sourceLineNo">028</span>import org.apache.hadoop.hbase.HConstants;<a name="line.28"></a>
+<span class="sourceLineNo">029</span>import org.apache.hadoop.hbase.TableName;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>import org.apache.hadoop.hbase.TableNotFoundException;<a name="line.30"></a>
+<span class="sourceLineNo">031</span>import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;<a name="line.31"></a>
+<span class="sourceLineNo">032</span>import org.apache.hadoop.hbase.client.Connection;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>import org.apache.hadoop.hbase.client.TableDescriptorBuilder;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>import org.apache.hadoop.hbase.security.User;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.security.access.AccessControlClient;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.security.access.AccessControlLists;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.security.access.Permission;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.apache.hadoop.hbase.security.access.SecureTestUtil;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.apache.hadoop.hbase.security.access.TableAuthManager;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.apache.hadoop.hbase.testclassification.SecurityTests;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.junit.AfterClass;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import org.junit.BeforeClass;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import org.junit.Test;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import org.junit.experimental.categories.Category;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import org.slf4j.Logger;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import org.slf4j.LoggerFactory;<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>/**<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * Performs authorization checks for rsgroup operations, according to different<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * levels of authorized users.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> */<a name="line.53"></a>
+<span class="sourceLineNo">054</span>@Category({SecurityTests.class})<a name="line.54"></a>
+<span class="sourceLineNo">055</span>public class TestRSGroupsWithACL extends SecureTestUtil{<a name="line.55"></a>
+<span class="sourceLineNo">056</span>  private static final Logger LOG = LoggerFactory.getLogger(TestRSGroupsWithACL.class);<a name="line.56"></a>
+<span class="sourceLineNo">057</span>  private static TableName TEST_TABLE = TableName.valueOf("testtable1");<a name="line.57"></a>
+<span class="sourceLineNo">058</span>  private static final HBaseTestingUtility TEST_UTIL = new HBaseTestingUtility();<a name="line.58"></a>
+<span class="sourceLineNo">059</span>  private static Configuration conf;<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>  private static Connection systemUserConnection;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>  // user with all permissions<a name="line.62"></a>
+<span class="sourceLineNo">063</span>  private static User SUPERUSER;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>  // user granted with all global permission<a name="line.64"></a>
+<span class="sourceLineNo">065</span>  private static User USER_ADMIN;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>  // user with rw permissions on column family.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  private static User USER_RW;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>  // user with read-only permissions<a name="line.68"></a>
+<span class="sourceLineNo">069</span>  private static User USER_RO;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>  // user is table owner. will have all permissions on table<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  private static User USER_OWNER;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>  // user with create table permissions alone<a name="line.72"></a>
+<span class="sourceLineNo">073</span>  private static User USER_CREATE;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>  // user with no permissions<a name="line.74"></a>
+<span class="sourceLineNo">075</span>  private static User USER_NONE;<a name="line.75"></a>
+<span class="sourceLineNo">076</span><a name="line.76"></a>
+<span class="sourceLineNo">077</span>  private static final String GROUP_ADMIN = "group_admin";<a name="line.77"></a>
+<span class="sourceLineNo">078</span>  private static final String GROUP_CREATE = "group_create";<a name="line.78"></a>
+<span class="sourceLineNo">079</span>  private static final String GROUP_READ = "group_read";<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  private static final String GROUP_WRITE = "group_write";<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  private static User USER_GROUP_ADMIN;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>  private static User USER_GROUP_CREATE;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>  private static User USER_GROUP_READ;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>  private static User USER_GROUP_WRITE;<a name="line.85"></a>
+<span class="sourceLineNo">086</span><a name="line.86"></a>
+<span class="sourceLineNo">087</span>  private static byte[] TEST_FAMILY = Bytes.toBytes("f1");<a name="line.87"></a>
+<span class="sourceLineNo">088</span><a name="line.88"></a>
+<span class="sourceLineNo">089</span>  private static RSGroupAdminEndpoint rsGroupAdminEndpoint;<a name="line.89"></a>
 <span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>  private static byte[] TEST_FAMILY = Bytes.toBytes("f1");<a name="line.91"></a>
-<span class="sourceLineNo">092</span><a name="line.92"></a>
-<span class="sourceLineNo">093</span>  private static RSGroupAdminEndpoint rsGroupAdminEndpoint;<a name="line.93"></a>
-<span class="sourceLineNo">094</span><a name="line.94"></a>
-<span class="sourceLineNo">095</span>  @Rule<a name="line.95"></a>
-<span class="sourceLineNo">096</span>  public TestName name = new TestName();<a name="line.96"></a>
-<span class="sourceLineNo">097</span><a name="line.97"></a>
-<span class="sourceLineNo">098</span>  @BeforeClass<a name="line.98"></a>
-<span class="sourceLineNo">099</span>  public static void setupBeforeClass() throws Exception {<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    // setup configuration<a name="line.100"></a>
-<span class="sourceLineNo">101</span>    conf = TEST_UTIL.getConfiguration();<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    conf.set(HConstants.HBASE_MASTER_LOADBALANCER_CLASS,<a name="line.102"></a>
-<span class="sourceLineNo">103</span>        RSGroupBasedLoadBalancer.class.getName());<a name="line.103"></a>
-<span class="sourceLineNo">104</span>    // Enable security<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    SecureTestUtil.enableSecurity(conf);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    // Verify enableSecurity sets up what we require<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    SecureTestUtil.verifyConfiguration(conf);<a name="line.107"></a>
-<span class="sourceLineNo">108</span><a name="line.108"></a>
-<span class="sourceLineNo">109</span>    configureRSGroupAdminEndpoint(conf);<a name="line.109"></a>
-<span class="sourceLineNo">110</span><a name="line.110"></a>
-<span class="sourceLineNo">111</span>    TEST_UTIL.startMiniCluster();<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    MasterCoprocessorHost cpHost =<a name="line.112"></a>
-<span class="sourceLineNo">113</span>        TEST_UTIL.getMiniHBaseCluster().getMaster().getMasterCoprocessorHost();<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    rsGroupAdminEndpoint = (RSGroupAdminEndpoint)<a name="line.114"></a>
-<span class="sourceLineNo">115</span>        cpHost.findCoprocessor(RSGroupAdminEndpoint.class.getName());<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span><a name="line.117"></a>
-<span class="sourceLineNo">118</span>    // Wait for the ACL table to become available<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    TEST_UTIL.waitUntilAllRegionsAssigned(AccessControlLists.ACL_TABLE_NAME);<a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>    // create a set of test users<a name="line.121"></a>
-<span class="sourceLineNo">122</span>    SUPERUSER = User.createUserForTesting(conf, "admin", new String[] { "supergroup" });<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    USER_ADMIN = User.createUserForTesting(conf, "admin2", new String[0]);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    USER_RW = User.createUserForTesting(conf, "rwuser", new String[0]);<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    USER_RO = User.createUserForTesting(conf, "rouser", new String[0]);<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    USER_OWNER = User.createUserForTesting(conf, "owner", new String[0]);<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    USER_CREATE = User.createUserForTesting(conf, "tbl_create", new String[0]);<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    USER_NONE = User.createUserForTesting(conf, "nouser", new String[0]);<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    USER_ADMIN_CF = User.createUserForTesting(conf, "col_family_admin", new String[0]);<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>    USER_GROUP_ADMIN =<a name="line.131"></a>
-<span class="sourceLineNo">132</span>        User.createUserForTesting(conf, "user_group_admin", new String[] { GROUP_ADMIN });<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    USER_GROUP_CREATE =<a name="line.133"></a>
-<span class="sourceLineNo">134</span>        User.createUserForTesting(conf, "user_group_create", new String[] { GROUP_CREATE });<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    USER_GROUP_READ =<a name="line.135"></a>
-<span class="sourceLineNo">136</span>        User.createUserForTesting(conf, "user_group_read", new String[] { GROUP_READ });<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    USER_GROUP_WRITE =<a name="line.137"></a>
-<span class="sourceLineNo">138</span>        User.createUserForTesting(conf, "user_group_write", new String[] { GROUP_WRITE });<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>    systemUserConnection = TEST_UTIL.getConnection();<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    setUpTableAndUserPermissions();<a name="line.141"></a>
-<span class="sourceLineNo">142</span>  }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>  private static void setUpTableAndUserPermissions() throws Exception {<a name="line.144"></a>
-<span class="sourceLineNo">145</span>    TableDescriptorBuilder tableBuilder = TableDescriptorBuilder.newBuilder(TEST_TABLE);<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    ColumnFamilyDescriptorBuilder cfd = ColumnFamilyDescriptorBuilder.newBuilder(TEST_FAMILY);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    cfd.setMaxVersions(100);<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    tableBuilder.addColumnFamily(cfd.build());<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    tableBuilder.setValue(TableDescriptorBuilder.OWNER, USER_OWNER.getShortName());<a name="line.149"></a>
-<span class="sourceLineNo">150</span>    SecureTestUtil.createTable(TEST_UTIL, tableBuilder.build(),<a name="line.150"></a>
-<span class="sourceLineNo">151</span>        new byte[][] { Bytes.toBytes("s") });<a name="line.151"></a>
+<span class="sourceLineNo">091</span>  @BeforeClass<a name="line.91"></a>
+<span class="sourceLineNo">092</span>  public static void setupBeforeClass() throws Exception {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    // setup configuration<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    conf = TEST_UTIL.getConfiguration();<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    conf.set(HConstants.HBASE_MASTER_LOADBALANCER_CLASS,<a name="line.95"></a>
+<span class="sourceLineNo">096</span>        RSGroupBasedLoadBalancer.class.getName());<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    // Enable security<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    enableSecurity(conf);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>    // Verify enableSecurity sets up what we require<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    verifyConfiguration(conf);<a name="line.100"></a>
+<span class="sourceLineNo">101</span>    // Enable rsgroup<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    configureRSGroupAdminEndpoint(conf);<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>    TEST_UTIL.startMiniCluster();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    rsGroupAdminEndpoint = (RSGroupAdminEndpoint) TEST_UTIL.getMiniHBaseCluster().getMaster().<a name="line.105"></a>
+<span class="sourceLineNo">106</span>        getMasterCoprocessorHost().findCoprocessor(RSGroupAdminEndpoint.class.getName());<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    // Wait for the ACL table to become available<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    TEST_UTIL.waitUntilAllRegionsAssigned(AccessControlLists.ACL_TABLE_NAME);<a name="line.108"></a>
+<span class="sourceLineNo">109</span><a name="line.109"></a>
+<span class="sourceLineNo">110</span>    // create a set of test users<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    SUPERUSER = User.createUserForTesting(conf, "admin", new String[] { "supergroup" });<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    USER_ADMIN = User.createUserForTesting(conf, "admin2", new String[0]);<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    USER_RW = User.createUserForTesting(conf, "rwuser", new String[0]);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    USER_RO = User.createUserForTesting(conf, "rouser", new String[0]);<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    USER_OWNER = User.createUserForTesting(conf, "owner", new String[0]);<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    USER_CREATE = User.createUserForTesting(conf, "tbl_create", new String[0]);<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    USER_NONE = User.createUserForTesting(conf, "nouser", new String[0]);<a name="line.117"></a>
+<span class="sourceLineNo">118</span><a name="line.118"></a>
+<span class="sourceLineNo">119</span>    USER_GROUP_ADMIN =<a name="line.119"></a>
+<span class="sourceLineNo">120</span>        User.createUserForTesting(conf, "user_group_admin", new String[] { GROUP_ADMIN });<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    USER_GROUP_CREATE =<a name="line.121"></a>
+<span class="sourceLineNo">122</span>        User.createUserForTesting(conf, "user_group_create", new String[] { GROUP_CREATE });<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    USER_GROUP_READ =<a name="line.123"></a>
+<span class="sourceLineNo">124</span>        User.createUserForTesting(conf, "user_group_read", new String[] { GROUP_READ });<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    USER_GROUP_WRITE =<a name="line.125"></a>
+<span class="sourceLineNo">126</span>        User.createUserForTesting(conf, "user_group_write", new String[] { GROUP_WRITE });<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>    systemUserConnection = TEST_UTIL.getConnection();<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    setUpTableAndUserPermissions();<a name="line.129"></a>
+<span class="sourceLineNo">130</span>  }<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>  private static void setUpTableAndUserPermissions() throws Exception {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    TableDescriptorBuilder tableBuilder = TableDescriptorBuilder.newBuilder(TEST_TABLE);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    ColumnFamilyDescriptorBuilder cfd = ColumnFamilyDescriptorBuilder.newBuilder(TEST_FAMILY);<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    cfd.setMaxVersions(100);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    tableBuilder.addColumnFamily(cfd.build());<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    tableBuilder.setValue(TableDescriptorBuilder.OWNER, USER_OWNER.getShortName());<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    createTable(TEST_UTIL, tableBuilder.build(),<a name="line.138"></a>
+<span class="sourceLineNo">139</span>        new byte[][] { Bytes.toBytes("s") });<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>    // Set up initial grants<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    grantGlobal(TEST_UTIL, USER_ADMIN.getShortName(),<a name="line.142"></a>
+<span class="sourceLineNo">143</span>        Permission.Action.ADMIN,<a name="line.143"></a>
+<span class="sourceLineNo">144</span>        Permission.Action.CREATE,<a name="line.144"></a>
+<span class="sourceLineNo">145</span>        Permission.Action.READ,<a name="line.145"></a>
+<span class="sourceLineNo">146</span>        Permission.Action.WRITE);<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>    grantOnTable(TEST_UTIL, USER_RW.getShortName(),<a name="line.148"></a>
+<span class="sourceLineNo">149</span>        TEST_TABLE, TEST_FAMILY, null,<a name="line.149"></a>
+<span class="sourceLineNo">150</span>        Permission.Action.READ,<a name="line.150"></a>
+<span class="sourceLineNo">151</span>        Permission.Action.WRITE);<a name="line.151"></a>
 <span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>    // Set up initial grants<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    SecureTestUtil.grantGlobal(TEST_UTIL, USER_ADMIN.getShortName(),<a name="line.154"></a>
-<span class="sourceLineNo">155</span>        Permission.Action.ADMIN,<a name="line.155"></a>
+<span class="sourceLineNo">153</span>    // USER_CREATE is USER_RW plus CREATE permissions<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    grantOnTable(TEST_UTIL, USER_CREATE.getShortName(),<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        TEST_TABLE, null, null,<a name="line.155"></a>
 <span class="sourceLineNo">156</span>        Permission.Action.CREATE,<a name="line.156"></a>
 <span class="sourceLineNo">157</span>        Permission.Action.READ,<a name="line.157"></a>
 <span class="sourceLineNo">158</span>        Permission.Action.WRITE);<a name="line.158"></a>
 <span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>    SecureTestUtil.grantOnTable(TEST_UTIL, USER_RW.getShortName(),<a name="line.160"></a>
+<span class="sourceLineNo">160</span>    grantOnTable(TEST_UTIL, USER_RO.getShortName(),<a name="line.160"></a>
 <span class="sourceLineNo">161</span>        TEST_TABLE, TEST_FAMILY, null,<a name="line.161"></a>
-<span class="sourceLineNo">162</span>        Permission.Action.READ,<a name="line.162"></a>
-<span class="sourceLineNo">163</span>        Permission.Action.WRITE);<a name="line.163"></a>
-<span class="sourceLineNo">164</span><a name="line.164"></a>
-<span class="sourceLineNo">165</span>    // USER_CREATE is USER_RW plus CREATE permissions<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    SecureTestUtil.grantOnTable(TEST_UTIL, USER_CREATE.getShortName(),<a name="line.166"></a>
-<span class="sourceLineNo">167</span>        TEST_TABLE, null, null,<a name="line.167"></a>
-<span class="sourceLineNo">168</span>        Permission.Action.CREATE,<a name="line.168"></a>
-<span class="sourceLineNo">169</span>        Permission.Action.READ,<a name="line.169"></a>
-<span class="sourceLineNo">170</span>        Permission.Action.WRITE);<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>    SecureTestUtil.grantOnTable(TEST_UTIL, USER_RO.getShortName(),<a name="line.172"></a>
-<span class="sourceLineNo">173</span>        TEST_TABLE, TEST_FAMILY, null,<a name="line.173"></a>
-<span class="sourceLineNo">174</span>        Permission.Action.READ);<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>    SecureTestUtil.grantOnTable(TEST_UTIL, USER_ADMIN_CF.getShortName(),<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        TEST_TABLE, TEST_FAMILY,<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        null, Permission.Action.ADMIN, Permission.Action.CREATE);<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>    SecureTestUtil.grantGlobal(TEST_UTIL, toGroupEntry(GROUP_ADMIN), Permission.Action.ADMIN);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    SecureTestUtil.grantGlobal(TEST_UTIL, toGroupEntry(GROUP_CREATE), Permission.Action.CREATE);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    SecureTestUtil.grantGlobal(TEST_UTIL, toGroupEntry(GROUP_READ), Permission.Action.READ);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    SecureTestUtil.grantGlobal(TEST_UTIL, toGroupEntry(GROUP_WRITE), Permission.Action.WRITE);<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>    assertEquals(5, AccessControlLists.getTablePermissions(conf, TEST_TABLE).size());<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    try {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      assertEquals(5, AccessControlClient.getUserPermissions(systemUserConnection,<a name="line.187"></a>
-<span class="sourceLineNo">188</span>          TEST_TABLE.toString()).size());<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    } catch (Throwable e) {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>      LOG.error("error during call of AccessControlClient.getUserPermissions. ", e);<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    }<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>  private static void cleanUp() throws Exception {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    // Clean the _acl_ table<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    try {<a name="line.196"></a>
-<span class="sourceLineNo">197</span>      SecureTestUtil.deleteTable(TEST_UTIL, TEST_TABLE);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    } catch (TableNotFoundException ex) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      // Test deleted the table, no problem<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      LOG.info("Test deleted table " + TEST_TABLE);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    }<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    // Verify all table/namespace permissions are erased<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    assertEquals(0, AccessControlLists.getTablePermissions(conf, TEST_TABLE).size());<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    assertEquals(<a name="line.204"></a>
-<span class="sourceLineNo">205</span>        0,<a name="line.205"></a>
-<span class="sourceLineNo">206</span>        AccessControlLists.getNamespacePermissions(conf,<a name="line.206"></a>
-<span class="sourceLineNo">207</span>            TEST_TABLE.getNamespaceAsString()).size());<a name="line.207"></a>
-<span class="sourceLineNo">208</span>  }<a name="line.208"></a>
-<span class="sourceLineNo">209</span><a name="line.209"></a>
-<span class="sourceLineNo">210</span>  @AfterClass<a name="line.210"></a>
-<span class="sourceLineNo">211</span>  public static void tearDownAfterClass() throws Exception {<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    cleanUp();<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    TEST_UTIL.shutdownMiniCluster();<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    int total = TableAuthManager.getTotalRefCount();<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    assertTrue("Unexpected reference count: " + total, total == 0);<a name="line.215"></a>
-<span class="sourceLineNo">216</span>  }<a name="line.216"></a>
+<span class="sourceLineNo">162</span>        Permission.Action.READ);<a name="line.162"></a>
+<span class="sourceLineNo">163</span><a name="line.163"></a>
+<span class="sourceLineNo">164</span>    grantGlobal(TEST_UTIL, toGroupEntry(GROUP_ADMIN), Permission.Action.ADMIN);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    grantGlobal(TEST_UTIL, toGroupEntry(GROUP_CREATE), Permission.Action.CREATE);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    grantGlobal(TEST_UTIL, toGroupEntry(GROUP_READ), Permission.Action.READ);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    grantGlobal(TEST_UTIL, toGroupEntry(GROUP_WRITE), Permission.Action.WRITE);<a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>    assertEquals(4, AccessControlLists.getTablePermissions(conf, TEST_TABLE).size());<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    try {<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      assertEquals(4, AccessControlClient.getUserPermissions(systemUserConnection,<a name="line.171"></a>
+<span class="sourceLineNo">172</span>          TEST_TABLE.toString()).size());<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    } catch (Throwable e) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>      LOG.error("error during call of AccessControlClient.getUserPermissions. ", e);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    }<a name="line.175"></a>
+<span class="sourceLineNo">176</span>  }<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>  private static void cleanUp() throws Exception {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    // Clean the _acl_ table<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    try {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>      deleteTable(TEST_UTIL, TEST_TABLE);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    } catch (TableNotFoundException ex) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      // Test deleted the table, no problem<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      LOG.info("Test deleted table " + TEST_TABLE);<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    // Verify all table/namespace permissions are erased<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    assertEquals(0, AccessControlLists.getTablePermissions(conf, TEST_TABLE).size());<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    assertEquals(0, AccessControlLists.getNamespacePermissions(conf,<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            TEST_TABLE.getNamespaceAsString()).size());<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>  @AfterClass<a name="line.192"></a>
+<span class="sourceLineNo">193</span>  public static void tearDownAfterClass() throws Exception {<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    cleanUp();<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    TEST_UTIL.shutdownMiniCluster();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    int total = TableAuthManager.getTotalRefCount();<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    assertTrue("Unexpected reference count: " + total, total == 0);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>  }<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>  private static void configureRSGroupAdminEndpoint(Configuration conf) {<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    String currentCoprocessors = conf.get(CoprocessorHost.MASTER_COPROCESSOR_CONF_KEY);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    String coprocessors = RSGroupAdminEndpoint.class.getName();<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    if (currentCoprocessors != null) {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      coprocessors += "," + currentCoprocessors;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    }<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    conf.set(CoprocessorHost.MASTER_COPROCESSOR_CONF_KEY, coprocessors);<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    conf.set(HConstants.HBASE_MASTER_LOADBALANCER_CLASS,<a name="line.207"></a>
+<span class="sourceLineNo">208</span>        RSGroupBasedLoadBalancer.class.getName());<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  @Test<a name="line.211"></a>
+<span class="sourceLineNo">212</span>  public void testGetRSGroupInfo() throws Exception {<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    AccessTestAction action = () -&gt; {<a name="line.213"></a>
+<span class="sourceLineNo">214</span>      rsGroupAdminEndpoint.checkPermission("getRSGroupInfo");<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      return null;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    };<a name="line.216"></a>
 <span class="sourceLineNo">217</span><a name="line.217"></a>
-<span class="sourceLineNo">218</span>  private static void configureRSGroupAdminEndpoint(Configuration conf) throws IOException {<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    String currentCoprocessors = conf.get(CoprocessorHost.MASTER_COPROCESSOR_CONF_KEY);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    String coprocessors = RSGroupAdminEndpoint.class.getName();<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    if (currentCoprocessors != null) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      coprocessors += "," + currentCoprocessors;<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    conf.set(CoprocessorHost.MASTER_COPROCESSOR_CONF_KEY, coprocessors);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    conf.set(HConstants.HBASE_MASTER_LOADBALANCER_CLASS,<a name="line.225"></a>
-<span class="sourceLineNo">226</span>        RSGroupBasedLoadBalancer.class.getName());<a name="line.226"></a>
-<span class="sourceLineNo">227</span>  }<a name="line.227"></a>
-<span class="sourceLineNo">228</span><a name="line.228"></a>
-<span class="sourceLineNo">229</span>  @Test<a name="line.229"></a>
-<span class="sourceLineNo">230</span>  public void testGetRSGroupInfo() throws Exception {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    AccessTestAction action = new AccessTestAction() {<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      @Override<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      public Object run() throws Exception {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>        rsGroupAdminEndpoint.checkPermission("getRSGroupInfo");<a name="line.234"></a>
-<span class="sourceLineNo">235</span>        return null;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>      }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    };<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.240"></a>
-<span class="sourceLineNo">241</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.241"></a>
-<span class="sourceLineNo">242</span>  }<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>  @Test<a name="line.244"></a>
-<span class="sourceLineNo">245</span>  public void testGetRSGroupInfoOfTable() throws Exception {<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    AccessTestAction action = new AccessTestAction() {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      @Override<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      public Object run() throws Exception {<a name="line.248"></a>
-<span class="sourceLineNo">249</span>        rsGroupAdminEndpoint.checkPermission("getRSGroupInfoOfTable");<a name="line.249"></a>
-<span class="sourceLineNo">250</span>        return null;<a name="line.250"></a>
-<span class="sourceLineNo">251</span>      }<a name="line.251"></a>
+<span class="sourceLineNo">218</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.219"></a>
+<span class="sourceLineNo">220</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.220"></a>
+<span class="sourceLineNo">221</span>  }<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>  @Test<a name="line.223"></a>
+<span class="sourceLineNo">224</span>  public void testGetRSGroupInfoOfTable() throws Exception {<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    AccessTestAction action = () -&gt; {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      rsGroupAdminEndpoint.checkPermission("getRSGroupInfoOfTable");<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      return null;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    };<a name="line.228"></a>
+<span class="sourceLineNo">229</span><a name="line.229"></a>
+<span class="sourceLineNo">230</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.231"></a>
+<span class="sourceLineNo">232</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>  }<a name="line.233"></a>
+<span class="sourceLineNo">234</span><a name="line.234"></a>
+<span class="sourceLineNo">235</span>  @Test<a name="line.235"></a>
+<span class="sourceLineNo">236</span>  public void testMoveServers() throws Exception {<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    AccessTestAction action = () -&gt; {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      rsGroupAdminEndpoint.checkPermission("moveServers");<a name="line.238"></a>
+<span class="sourceLineNo">239</span>      return null;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    };<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.243"></a>
+<span class="sourceLineNo">244</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<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>  @Test<a name="line.247"></a>
+<span class="sourceLineNo">248</span>  public void testMoveTables() throws Exception {<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    AccessTestAction action = () -&gt; {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>      rsGroupAdminEndpoint.checkPermission("moveTables");<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      return null;<a name="line.251"></a>
 <span class="sourceLineNo">252</span>    };<a name="line.252"></a>
 <span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.255"></a>
+<span class="sourceLineNo">254</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.255"></a>
 <span class="sourceLineNo">256</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.256"></a>
 <span class="sourceLineNo">257</span>  }<a name="line.257"></a>
 <span class="sourceLineNo">258</span><a name="line.258"></a>
 <span class="sourceLineNo">259</span>  @Test<a name="line.259"></a>
-<span class="sourceLineNo">260</span>  public void testMoveServers() throws Exception {<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    AccessTestAction action = new AccessTestAction() {<a name="line.261"></a>
-<span class="sourceLineNo">262</span>      @Override<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      public Object run() throws Exception {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>        rsGroupAdminEndpoint.checkPermission("moveServers");<a name="line.264"></a>
-<span class="sourceLineNo">265</span>        return null;<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      }<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    };<a name="line.267"></a>
-<span class="sourceLineNo">268</span><a name="line.268"></a>
-<span class="sourceLineNo">269</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.270"></a>
-<span class="sourceLineNo">271</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.271"></a>
-<span class="sourceLineNo">272</span>  }<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>  @Test<a name="line.274"></a>
-<span class="sourceLineNo">275</span>  public void testMoveTables() throws Exception {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    AccessTestAction action = new AccessTestAction() {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      @Override<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      public Object run() throws Exception {<a name="line.278"></a>
-<span class="sourceLineNo">279</span>        rsGroupAdminEndpoint.checkPermission("moveTables");<a name="line.279"></a>
-<span class="sourceLineNo">280</span>        return null;<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      }<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    };<a name="line.282"></a>
-<span class="sourceLineNo">283</span><a name="line.283"></a>
-<span class="sourceLineNo">284</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.285"></a>
-<span class="sourceLineNo">286</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<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">289</span>  @Test<a name="line.289"></a>
-<span class="sourceLineNo">290</span>  public void testAddRSGroup() throws Exception {<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    AccessTestAction action = new AccessTestAction() {<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      @Override<a name="line.292"></a>
-<span class="sourceLineNo">293</span>      public Object run() throws Exception {<a name="line.293"></a>
-<span class="sourceLineNo">294</span>        rsGroupAdminEndpoint.checkPermission("addRSGroup");<a name="line.294"></a>
-<span class="sourceLineNo">295</span>        return null;<a name="line.295"></a>
-<span class="sourceLineNo">296</span>      }<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    };<a name="line.297"></a>
-<span class="sourceLineNo">298</span><a name="line.298"></a>
-<span class="sourceLineNo">299</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.300"></a>
-<span class="sourceLineNo">301</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.301"></a>
-<span class="sourceLineNo">302</span>  }<a name="line.302"></a>
-<span class="sourceLineNo">303</span><a name="line.303"></a>
-<span class="sourceLineNo">304</span>  @Test<a name="line.304"></a>
-<span class="sourceLineNo">305</span>  public void testRemoveRSGroup() throws Exception {<a name="line.305"></a>
-<span class="sourceLineNo">306</span>    AccessTestAction action = new AccessTestAction() {<a name="line.306"></a>
-<span class="sourceLineNo">307</span>      @Override<a name="line.307"></a>
-<span class="sourceLineNo">308</span>      public Object run() throws Exception {<a name="line.308"></a>
-<span class="sourceLineNo">309</span>        rsGroupAdminEndpoint.checkPermission("removeRSGroup");<a name="line.309"></a>
-<span class="sourceLineNo">310</span>        return null;<a name="line.310"></a>
-<span class="sourceLineNo">311</span>      }<a name="line.311"></a>
+<span class="sourceLineNo">260</span>  public void testAddRSGroup() throws Exception {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    AccessTestAction action = () -&gt; {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      rsGroupAdminEndpoint.checkPermission("addRSGroup");<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return null;<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>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.267"></a>
+<span class="sourceLineNo">268</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>  }<a name="line.269"></a>
+<span class="sourceLineNo">270</span><a name="line.270"></a>
+<span class="sourceLineNo">271</span>  @Test<a name="line.271"></a>
+<span class="sourceLineNo">272</span>  public void testRemoveRSGroup() throws Exception {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    AccessTestAction action = () -&gt; {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      rsGroupAdminEndpoint.checkPermission("removeRSGroup");<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      return null;<a name="line.275"></a>
+<span class="sourceLineNo">276</span>    };<a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.279"></a>
+<span class="sourceLineNo">280</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.280"></a>
+<span class="sourceLineNo">281</span>  }<a name="line.281"></a>
+<span class="sourceLineNo">282</span><a name="line.282"></a>
+<span class="sourceLineNo">283</span>  @Test<a name="line.283"></a>
+<span class="sourceLineNo">284</span>  public void testBalanceRSGroup() throws Exception {<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    AccessTestAction action = () -&gt; {<a name="line.285"></a>
+<span class="sourceLineNo">286</span>      rsGroupAdminEndpoint.checkPermission("balanceRSGroup");<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      return null;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    };<a name="line.288"></a>
+<span class="sourceLineNo">289</span><a name="line.289"></a>
+<span class="sourceLineNo">290</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.291"></a>
+<span class="sourceLineNo">292</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<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>
+<span class="sourceLineNo">295</span>  @Test<a name="line.295"></a>
+<span class="sourceLineNo">296</span>  public void testListRSGroup() throws Exception {<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    AccessTestAction action = () -&gt; {<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      rsGroupAdminEndpoint.checkPermission("listRSGroup");<a name="line.298"></a>
+<span class="sourceLineNo">299</span>      return null;<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    };<a name="line.300"></a>
+<span class="sourceLineNo">301</span><a name="line.301"></a>
+<span class="sourceLineNo">302</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.303"></a>
+<span class="sourceLineNo">304</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.304"></a>
+<span class="sourceLineNo">305</span>  }<a name="line.305"></a>
+<span class="sourceLineNo">306</span><a name="line.306"></a>
+<span class="sourceLineNo">307</span>  @Test<a name="line.307"></a>
+<span class="sourceLineNo">308</span>  public void testGetRSGroupInfoOfServer() throws Exception {<a name="line.308"></a>
+<span class="sourceLineNo">309</span>    AccessTestAction action = () -&gt; {<a name="line.309"></a>
+<span class="sourceLineNo">310</span>      rsGroupAdminEndpoint.checkPermission("getRSGroupInfoOfServer");<a name="line.310"></a>
+<span class="sourceLineNo">311</span>      return null;<a name="line.311"></a>
 <span class="sourceLineNo">312</span>    };<a name="line.312"></a>
 <span class="sourceLineNo">313</span><a name="line.313"></a>
-<span class="sourceLineNo">314</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.315"></a>
+<span class="sourceLineNo">314</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.315"></a>
 <span class="sourceLineNo">316</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.316"></a>
 <span class="sourceLineNo">317</span>  }<a name="line.317"></a>
 <span class="sourceLineNo">318</span><a name="line.318"></a>
 <span class="sourceLineNo">319</span>  @Test<a name="line.319"></a>
-<span class="sourceLineNo">320</span>  public void testBalanceRSGroup() throws Exception {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    AccessTestAction action = new AccessTestAction() {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      @Override<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      public Object run() throws Exception {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        rsGroupAdminEndpoint.checkPermission("balanceRSGroup");<a name="line.324"></a>
-<span class="sourceLineNo">325</span>        return null;<a name="line.325"></a>
-<span class="sourceLineNo">326</span>      }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    };<a name="line.327"></a>
-<span class="sourceLineNo">328</span><a name="line.328"></a>
-<span class="sourceLineNo">329</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.329"></a>
-<span class="sourceLineNo">330</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.330"></a>
-<span class="sourceLineNo">331</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.331"></a>
-<span class="sourceLineNo">332</span>  }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>  @Test<a name="line.334"></a>
-<span class="sourceLineNo">335</span>  public void testListRSGroup() throws Exception {<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    AccessTestAction action = new AccessTestAction() {<a name="line.336"></a>
-<span class="sourceLineNo">337</span>      @Override<a name="line.337"></a>
-<span class="sourceLineNo">338</span>      public Object run() throws Exception {<a name="line.338"></a>
-<span class="sourceLineNo">339</span>        rsGroupAdminEndpoint.checkPermission("listRSGroup");<a name="line.339"></a>
-<span class="sourceLineNo">340</span>        return null;<a name="line.340"></a>
-<span class="sourceLineNo">341</span>      }<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    };<a name="line.342"></a>
-<span class="sourceLineNo">343</span><a name="line.343"></a>
-<span class="sourceLineNo">344</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.345"></a>
-<span class="sourceLineNo">346</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.346"></a>
-<span class="sourceLineNo">347</span>  }<a name="line.347"></a>
-<span class="sourceLineNo">348</span><a name="line.348"></a>
-<span class="sourceLineNo">349</span>  @Test<a name="line.349"></a>
-<span class="sourceLineNo">350</span>  public void testGetRSGroupInfoOfServer() throws Exception {<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    AccessTestAction action = new AccessTestAction() {<a name="line.351"></a>
-<span class="sourceLineNo">352</span>      @Override<a name="line.352"></a>
-<span class="sourceLineNo">353</span>      public Object run() throws Exception {<a name="line.353"></a>
-<span class="sourceLineNo">354</span>        rsGroupAdminEndpoint.checkPermission("getRSGroupInfoOfServer");<a name="line.354"></a>
-<span class="sourceLineNo">355</span>        return null;<a name="line.355"></a>
-<span class="sourceLineNo">356</span>      }<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    };<a name="line.357"></a>
-<span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.360"></a>
-<span class="sourceLineNo">361</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.361"></a>
-<span class="sourceLineNo">362</span>  }<a name="line.362"></a>
-<span class="sourceLineNo">363</span><a name="line.363"></a>
-<span class="sourceLineNo">364</span>  @Test<a name="line.364"></a>
-<span class="sourceLineNo">365</span>  public void testMoveServersAndTables() throws Exception {<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    AccessTestAction action = new AccessTestAction() {<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      @Override<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      public Object run() throws Exception {<a name="line.368"></a>
-<span class="sourceLineNo">369</span>        rsGroupAdminEndpoint.checkPermission("moveServersAndTables");<a name="line.369"></a>
-<span class="sourceLineNo">370</span>        return null;<a name="line.370"></a>
-<span class="sourceLineNo">371</span>      }<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    };<a name="line.372"></a>
-<span class="sourceLineNo">373</span><a name="line.373"></a>
-<span class="sourceLineNo">374</span>    SecureTestUtil.verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    SecureTestUtil.verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.375"></a>
-<span class="sourceLineNo">376</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.376"></a>
-<span class="sourceLineNo">377</span>  }<a name="line.377"></a>
-<span class="sourceLineNo">378</span>}<a name="line.378"></a>
+<span class="sourceLineNo">320</span>  public void testMoveServersAndTables() throws Exception {<a name="line.320"></a>
+<span class="sourceLineNo">321</span>    AccessTestAction action = () -&gt; {<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      rsGroupAdminEndpoint.checkPermission("moveServersAndTables");<a name="line.322"></a>
+<span class="sourceLineNo">323</span>      return null;<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    };<a name="line.324"></a>
+<span class="sourceLineNo">325</span><a name="line.325"></a>
+<span class="sourceLineNo">326</span>    verifyAllowed(action, SUPERUSER, USER_ADMIN, USER_GROUP_ADMIN);<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    verifyDenied(action, USER_CREATE, USER_OWNER, USER_RW, USER_RO,<a name="line.327"></a>
+<span class="sourceLineNo">328</span>        USER_NONE, USER_GROUP_READ, USER_GROUP_WRITE, USER_GROUP_CREATE);<a name="line.328"></a>
+<span class="sourceLineNo">329</span>  }<a name="line.329"></a>
+<span class="sourceLineNo">330</span>}<a name="line.330"></a>
 
 
 


[14/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/checkstyle.rss
----------------------------------------------------------------------
diff --git a/checkstyle.rss b/checkstyle.rss
index cf3c04f..4f95be0 100644
--- a/checkstyle.rss
+++ b/checkstyle.rss
@@ -26,7 +26,7 @@ under the License.
     <copyright>&#169;2007 - 2018 The Apache Software Foundation</copyright>
     <item>
       <title>File: 3487,
-             Errors: 18208,
+             Errors: 18209,
              Warnings: 0,
              Infos: 0
       </title>
@@ -489,7 +489,7 @@ under the License.
                   0
                 </td>
                 <td>
-                  0
+                  1
                 </td>
               </tr>
                           <tr>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/coc.html
----------------------------------------------------------------------
diff --git a/coc.html b/coc.html
index 4c5b7e7..c863c60 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Code of Conduct Policy
@@ -380,7 +380,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/cygwin.html
----------------------------------------------------------------------
diff --git a/cygwin.html b/cygwin.html
index 8c700ba..4866e3a 100644
--- a/cygwin.html
+++ b/cygwin.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Installing Apache HBase (TM) on Windows using Cygwin</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -679,7 +679,7 @@ Now your <b>HBase </b>server is running, <b>start coding</b> and build that next
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/dependencies.html
----------------------------------------------------------------------
diff --git a/dependencies.html b/dependencies.html
index 150c241..3c6d315 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -445,7 +445,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/dependency-convergence.html b/dependency-convergence.html
index 0e24bc5..044bd8f 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -1082,7 +1082,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/dependency-info.html
----------------------------------------------------------------------
diff --git a/dependency-info.html b/dependency-info.html
index d0b11bb..2b5e1a0 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -318,7 +318,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/dependency-management.html
----------------------------------------------------------------------
diff --git a/dependency-management.html b/dependency-management.html
index 6f87c4e..1947315 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -980,7 +980,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/constant-values.html
----------------------------------------------------------------------
diff --git a/devapidocs/constant-values.html b/devapidocs/constant-values.html
index c08aa74..6c3ff31 100644
--- a/devapidocs/constant-values.html
+++ b/devapidocs/constant-values.html
@@ -3747,21 +3747,21 @@
 <!--   -->
 </a><code>public&nbsp;static&nbsp;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></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#date">date</a></code></td>
-<td class="colLast"><code>"Tue Jan  9 14:42:58 UTC 2018"</code></td>
+<td class="colLast"><code>"Wed Jan 10 14:42:56 UTC 2018"</code></td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.revision">
 <!--   -->
 </a><code>public&nbsp;static&nbsp;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></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#revision">revision</a></code></td>
-<td class="colLast"><code>"f458b89c05e079a0a0c4946a4f965fbb94f9fd8c"</code></td>
+<td class="colLast"><code>"f0d0501d556efb8796138d4aa92ce4f276c93c3b"</code></td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.srcChecksum">
 <!--   -->
 </a><code>public&nbsp;static&nbsp;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></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#srcChecksum">srcChecksum</a></code></td>
-<td class="colLast"><code>"1dc67f30f31b2283f034ca2d1ae27fee"</code></td>
+<td class="colLast"><code>"1d36de1c42253feef08a258d994ee96c"</code></td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.url">

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
index 141ee0b..0e32b64 100644
--- a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
@@ -167,10 +167,10 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupRestoreConstants.BackupCommand.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupRestoreConstants.BackupCommand</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupState.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupPhase.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupPhase</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupType.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/BackupInfo.BackupState.html" title="enum in org.apache.hadoop.hbase.backup"><span class="typeNameLink">BackupInfo.BackupState</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
index a29477d..3d83e09 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
@@ -547,24 +547,24 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RegionLocateType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RegionLocateType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AbstractResponse.ResponseType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncRequestFutureImpl.Retry.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncRequestFutureImpl.Retry</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AbstractResponse.ResponseType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AbstractResponse.ResponseType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MobCompactPartitionPolicy.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MobCompactPartitionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Scan.ReadType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Scan.ReadType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/SnapshotType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">SnapshotType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncProcessTask.SubmittedRows.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncProcessTask.SubmittedRows</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/TableState.State.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">TableState.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/IsolationLevel.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">IsolationLevel</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/ScannerCallable.MoreResults.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">ScannerCallable.MoreResults</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/AsyncProcessTask.SubmittedRows.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">AsyncProcessTask.SubmittedRows</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html b/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
index f3faf34..de98212 100644
--- a/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
@@ -182,11 +182,11 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterWrapper.FilterRowRetCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.CompareOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">CompareFilter.CompareOp</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.Order.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.Order</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/CompareFilter.CompareOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">CompareFilter.CompareOp</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/BitComparator.BitwiseOp.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">BitComparator.BitwiseOp</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterWrapper.FilterRowRetCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterWrapper.FilterRowRetCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/RegexStringComparator.EngineType.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">RegexStringComparator.EngineType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.SatisfiesCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.SatisfiesCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html b/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
index 6a68950..13451b9 100644
--- a/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
@@ -273,10 +273,10 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.BlockCategory.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType.BlockCategory</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.MemoryType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Cacheable.MemoryType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheConfig.ExternalBlockCaches.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">CacheConfig.ExternalBlockCaches</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockPriority</span></a></li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html b/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
index 0e04551..ac2021c 100644
--- a/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
@@ -348,9 +348,9 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/CallEvent.Type.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">CallEvent.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
index 6b3e971..0b0af37 100644
--- a/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
@@ -293,10 +293,10 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableSplit.Version</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/CellCounter.CellCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">CellCounter.CellCounterMapper.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">SyncTable.SyncMapper.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/RowCounter.RowCounterMapper.Counters.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">RowCounter.RowCounterMapper.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/TableSplit.Version.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">TableSplit.Version</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/SyncTable.SyncMapper.Counter.html" title="enum in org.apache.hadoop.hbase.mapreduce"><span class="typeNameLink">SyncTable.SyncMapper.Counter</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/master/HMaster.html b/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
index 2d7c1e9..68b1d48 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
@@ -4570,7 +4570,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>updateReplicationPeerConfig</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3355">updateReplicationPeerConfig</a>(<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>&nbsp;peerId,
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3354">updateReplicationPeerConfig</a>(<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>&nbsp;peerId,
                                         <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerConfig.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerConfig</a>&nbsp;peerConfig)
                                  throws <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationException.html" title="class in org.apache.hadoop.hbase.replication">ReplicationException</a>,
                                         <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>
@@ -4594,7 +4594,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>listReplicationPeers</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3363">listReplicationPeers</a>(<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>&nbsp;regex)
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationPeerDescription.html" title="class in org.apache.hadoop.hbase.replication">ReplicationPeerDescription</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3362">listReplicationPeers</a>(<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>&nbsp;regex)
                                                       throws <a href="../../../../../org/apache/hadoop/hbase/replication/ReplicationException.html" title="class in org.apache.hadoop.hbase.replication">ReplicationException</a>,
                                                              <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="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#listReplicationPeers-java.lang.String-">MasterServices</a></code></span></div>
@@ -4618,7 +4618,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>decommissionRegionServers</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3384">decommissionRegionServers</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3383">decommissionRegionServers</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;servers,
                                       boolean&nbsp;offload)
                                throws <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
 <div class="block">Mark region server(s) as decommissioned (previously called 'draining') to prevent additional
@@ -4637,7 +4637,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>listDecommissionedRegionServers</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3424">listDecommissionedRegionServers</a>()</pre>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3423">listDecommissionedRegionServers</a>()</pre>
 <div class="block">List region servers marked as decommissioned (previously called 'draining') to not get regions
  assigned to them.</div>
 <dl>
@@ -4652,7 +4652,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>recommissionRegionServer</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3434">recommissionRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3433">recommissionRegionServer</a>(<a href="../../../../../org/apache/hadoop/hbase/ServerName.html" title="class in org.apache.hadoop.hbase">ServerName</a>&nbsp;server,
                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;byte[]&gt;&nbsp;encodedRegionNames)
                               throws <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
 <div class="block">Remove decommission marker (previously called 'draining') from a region server to allow regions
@@ -4671,7 +4671,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>getLockManager</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/master/locking/LockManager.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3473">getLockManager</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/master/locking/LockManager.html" title="class in org.apache.hadoop.hbase.master.locking">LockManager</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3472">getLockManager</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getLockManager--">getLockManager</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html" title="interface in org.apache.hadoop.hbase.master">MasterServices</a></code></dd>
@@ -4686,7 +4686,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>recoverMeta</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3478">recoverMeta</a>()
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3477">recoverMeta</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="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#recoverMeta--">MasterServices</a></code></span></div>
 <div class="block">Recover meta table. Will result in no-op is meta is already initialized. Any code that has
@@ -4706,7 +4706,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuotaObserverChore</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaObserverChore.html" title="class in org.apache.hadoop.hbase.quotas">QuotaObserverChore</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3488">getQuotaObserverChore</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaObserverChore.html" title="class in org.apache.hadoop.hbase.quotas">QuotaObserverChore</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3487">getQuotaObserverChore</a>()</pre>
 </li>
 </ul>
 <a name="getSpaceQuotaSnapshotNotifier--">
@@ -4715,7 +4715,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>getSpaceQuotaSnapshotNotifier</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotNotifier</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3492">getSpaceQuotaSnapshotNotifier</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceQuotaSnapshotNotifier.html" title="interface in org.apache.hadoop.hbase.quotas">SpaceQuotaSnapshotNotifier</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3491">getSpaceQuotaSnapshotNotifier</a>()</pre>
 </li>
 </ul>
 <a name="getRemoteProcedure-long-">
@@ -4724,7 +4724,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>getRemoteProcedure</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteProcedure.html" title="interface in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteProcedure</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>,?&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3497">getRemoteProcedure</a>(long&nbsp;procId)</pre>
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureDispatcher.RemoteProcedure.html" title="interface in org.apache.hadoop.hbase.procedure2">RemoteProcedureDispatcher.RemoteProcedure</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/master/procedure/MasterProcedureEnv.html" title="class in org.apache.hadoop.hbase.master.procedure">MasterProcedureEnv</a>,?&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3496">getRemoteProcedure</a>(long&nbsp;procId)</pre>
 </li>
 </ul>
 <a name="remoteProcedureCompleted-long-">
@@ -4733,7 +4733,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>remoteProcedureCompleted</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3506">remoteProcedureCompleted</a>(long&nbsp;procId)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3505">remoteProcedureCompleted</a>(long&nbsp;procId)</pre>
 </li>
 </ul>
 <a name="remoteProcedureFailed-long-org.apache.hadoop.hbase.procedure2.RemoteProcedureException-">
@@ -4742,7 +4742,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockList">
 <li class="blockList">
 <h4>remoteProcedureFailed</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3513">remoteProcedureFailed</a>(long&nbsp;procId,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3512">remoteProcedureFailed</a>(long&nbsp;procId,
                                   <a href="../../../../../org/apache/hadoop/hbase/procedure2/RemoteProcedureException.html" title="class in org.apache.hadoop.hbase.procedure2">RemoteProcedureException</a>&nbsp;error)</pre>
 </li>
 </ul>
@@ -4752,7 +4752,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/master/MasterServices
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getReplicationPeerManager</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication">ReplicationPeerManager</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3521">getReplicationPeerManager</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication">ReplicationPeerManager</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/master/HMaster.html#line.3520">getReplicationPeerManager</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/master/MasterServices.html#getReplicationPeerManager--">MasterServices</a></code></span></div>
 <div class="block">Returns the <a href="../../../../../org/apache/hadoop/hbase/master/replication/ReplicationPeerManager.html" title="class in org.apache.hadoop.hbase.master.replication"><code>ReplicationPeerManager</code></a>.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/master/package-tree.html b/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
index fe55dd9..5876390 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/package-tree.html
@@ -332,11 +332,11 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.ResubmitDirective</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/SplitLogManager.TerminationStatus.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.TerminationStatus</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MasterRpcServices.BalanceSwitchMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/SplitLogManager.ResubmitDirective.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">SplitLogManager.ResubmitDirective</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/MetricsMasterSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MetricsMasterSourceFactoryImpl.FactoryStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.<a href="../../../../../org/apache/hadoop/hbase/master/RegionState.State.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">RegionState.State</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/package-tree.html b/devapidocs/org/apache/hadoop/hbase/package-tree.html
index 9e93f0a..1553175 100644
--- a/devapidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/package-tree.html
@@ -444,20 +444,20 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ProcedureState.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ProcedureState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompatibilitySingletonFactory.SingletonStorage.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompatibilitySingletonFactory.SingletonStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ClusterMetrics.Option.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ClusterMetrics.Option</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MetaTableAccessor.QueryType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CompareOperator.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CompareOperator</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MetaTableAccessor.QueryType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MetaTableAccessor.QueryType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeepDeletedCells.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeepDeletedCells</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Size.Unit.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Size.Unit</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/CellBuilderType.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">CellBuilderType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html b/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
index c6cad37..cdd966c 100644
--- a/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
@@ -208,11 +208,11 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockedResourceType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure.LockState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/RootProcedureState.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">RootProcedureState.State</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockedResourceType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockedResourceType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html b/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
index 4be4130..d510ea9 100644
--- a/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
@@ -206,12 +206,12 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottlingException.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html b/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
index 176c20d..c9994ce 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
@@ -704,19 +704,19 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/DefaultHeapMemoryTuner.StepDirection.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">DefaultHeapMemoryTuner.StepDirection</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MemStoreCompactionStrategy.Action</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">FlushType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MetricsRegionServerSourceFactoryImpl.FactoryStorage</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MemStoreCompactionStrategy.Action.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MemStoreCompactionStrategy.Action</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/BloomType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">BloomType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
index 6e98708..af72bf3 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
@@ -130,9 +130,9 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/DeleteTracker.DeleteResult.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">DeleteTracker.DeleteResult</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/ScanQueryMatcher.MatchCode.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">ScanQueryMatcher.MatchCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
index dc4ae28..fd5e922 100644
--- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
@@ -197,8 +197,8 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceFactoryImpl.SourceHolder.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">MetricsReplicationSourceFactoryImpl.SourceHolder</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.WorkerState.html" title="enum in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">ReplicationSourceShipper.WorkerState</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/rest/model/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/rest/model/package-tree.html b/devapidocs/org/apache/hadoop/hbase/rest/model/package-tree.html
index b0813dc..d93b122 100644
--- a/devapidocs/org/apache/hadoop/hbase/rest/model/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/rest/model/package-tree.html
@@ -110,8 +110,8 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.rest.model.<a href="../../../../../../org/apache/hadoop/hbase/rest/model/ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType.html" title="enum in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rest.model.<a href="../../../../../../org/apache/hadoop/hbase/rest/model/ScannerModel.FilterModel.FilterType.html" title="enum in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">ScannerModel.FilterModel.FilterType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.rest.model.<a href="../../../../../../org/apache/hadoop/hbase/rest/model/ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType.html" title="enum in org.apache.hadoop.hbase.rest.model"><span class="typeNameLink">ScannerModel.FilterModel.ByteArrayComparableModel.ComparatorType</span></a></li>
 </ul>
 </li>
 </ul>


[06/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/project-summary.html b/hbase-shaded-check-invariants/project-summary.html
index cdd95f0..c7b48dd 100644
--- a/hbase-shaded-check-invariants/project-summary.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -166,7 +166,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/source-repository.html b/hbase-shaded-check-invariants/source-repository.html
index 822688f..3858452 100644
--- a/hbase-shaded-check-invariants/source-repository.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/team-list.html b/hbase-shaded-check-invariants/team-list.html
index dc2bba0..b8a0c82 100644
--- a/hbase-shaded-check-invariants/team-list.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/index.html
----------------------------------------------------------------------
diff --git a/index.html b/index.html
index 4b60c2f..d9fe32e 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBaseâ„¢ Home</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -438,7 +438,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/integration.html
----------------------------------------------------------------------
diff --git a/integration.html b/integration.html
index 01d2d2a..ac46ac9 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -296,7 +296,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/issue-tracking.html
----------------------------------------------------------------------
diff --git a/issue-tracking.html b/issue-tracking.html
index a10c595..6b41670 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -293,7 +293,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/license.html
----------------------------------------------------------------------
diff --git a/license.html b/license.html
index d60b535..6fa945b 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -496,7 +496,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/mail-lists.html
----------------------------------------------------------------------
diff --git a/mail-lists.html b/mail-lists.html
index aa525ab..785ec75 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -346,7 +346,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/metrics.html
----------------------------------------------------------------------
diff --git a/metrics.html b/metrics.html
index a639b53..3c2e158 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) Metrics
@@ -464,7 +464,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/old_news.html
----------------------------------------------------------------------
diff --git a/old_news.html b/old_news.html
index 1d34354..fb96e8b 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Old Apache HBase (TM) News
@@ -419,7 +419,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/plugin-management.html
----------------------------------------------------------------------
diff --git a/plugin-management.html b/plugin-management.html
index cf11864..8a1b5de 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -441,7 +441,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/plugins.html
----------------------------------------------------------------------
diff --git a/plugins.html b/plugins.html
index e3407bf..cfb5a3e 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -380,7 +380,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/poweredbyhbase.html
----------------------------------------------------------------------
diff --git a/poweredbyhbase.html b/poweredbyhbase.html
index 6865e7a..b246523 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <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.5-HBASE.min.css" />
@@ -774,7 +774,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/project-info.html
----------------------------------------------------------------------
diff --git a/project-info.html b/project-info.html
index 36e80d3..e780a21 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -340,7 +340,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/project-reports.html
----------------------------------------------------------------------
diff --git a/project-reports.html b/project-reports.html
index 1f6fbfd..5c79a0f 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -310,7 +310,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/project-summary.html
----------------------------------------------------------------------
diff --git a/project-summary.html b/project-summary.html
index 18be0e3..15ad583 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -336,7 +336,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/pseudo-distributed.html
----------------------------------------------------------------------
diff --git a/pseudo-distributed.html b/pseudo-distributed.html
index 6ae8478..f4f71f6 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
 Running Apache HBase (TM) in pseudo-distributed mode
@@ -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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/replication.html
----------------------------------------------------------------------
diff --git a/replication.html b/replication.html
index e60236a..b427927 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Apache HBase (TM) Replication
@@ -308,7 +308,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/resources.html
----------------------------------------------------------------------
diff --git a/resources.html b/resources.html
index 1c8904d..126ae99 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <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.5-HBASE.min.css" />
@@ -336,7 +336,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/source-repository.html
----------------------------------------------------------------------
diff --git a/source-repository.html b/source-repository.html
index 31c8dd5..5b8e93c 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -304,7 +304,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/sponsors.html
----------------------------------------------------------------------
diff --git a/sponsors.html b/sponsors.html
index 51c8bd8..42dbff4 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase™ Sponsors</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -338,7 +338,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/supportingprojects.html
----------------------------------------------------------------------
diff --git a/supportingprojects.html b/supportingprojects.html
index 4901193..ee93782 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Supporting Projects</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -525,7 +525,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/team-list.html
----------------------------------------------------------------------
diff --git a/team-list.html b/team-list.html
index 81b0f34..2b6121e 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -723,7 +723,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/index-all.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/index-all.html b/testdevapidocs/index-all.html
index 9cd4aa9..90f1ea4 100644
--- a/testdevapidocs/index-all.html
+++ b/testdevapidocs/index-all.html
@@ -23311,8 +23311,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#name">name</a></span> - Variable in class org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsOfflineMode</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#name">name</a></span> - Variable in class org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html#name">name</a></span> - Variable in class org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessControlFilter</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/security/access/TestAccessController.html#name">name</a></span> - Variable in class org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestAccessController.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController</a></dt>
@@ -54491,7 +54489,10 @@
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html#TestRSGroupsOfflineMode--">TestRSGroupsOfflineMode()</a></span> - Constructor for class org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsOfflineMode</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsWithACL</span></a> - Class in <a href="org/apache/hadoop/hbase/rsgroup/package-summary.html">org.apache.hadoop.hbase.rsgroup</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="block">Performs authorization checks for rsgroup operations, according to different
+ levels of authorized users.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#TestRSGroupsWithACL--">TestRSGroupsWithACL()</a></span> - Constructor for class org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/TestNodeHealthCheckChore.html#testRSHealthChore--">testRSHealthChore()</a></span> - Method in class org.apache.hadoop.hbase.<a href="org/apache/hadoop/hbase/TestNodeHealthCheckChore.html" title="class in org.apache.hadoop.hbase">TestNodeHealthCheckChore</a></dt>
@@ -60371,8 +60372,6 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html#USER_ADMIN">USER_ADMIN</a></span> - Static variable in class org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.access">TestWithDisabledAuthorization</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#USER_ADMIN_CF">USER_ADMIN_CF</a></span> - Static variable in class org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/security/access/TestAccessController.html#USER_ADMIN_CF">USER_ADMIN_CF</a></span> - Static variable in class org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestAccessController.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/security/access/TestAccessController3.html#USER_ADMIN_CF">USER_ADMIN_CF</a></span> - Static variable in class org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestAccessController3.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController3</a></dt>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
index 3d712aa..a2e8d58 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/package-tree.html
@@ -584,15 +584,15 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/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/RESTApiClusterManager.Service.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.Service</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/ScanPerformanceEvaluation.ScanCounter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">ScanPerformanceEvaluation.ScanCounter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/PerformanceEvaluation.Counter.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">PerformanceEvaluation.Counter</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/RESTApiClusterManager.RoleCommand.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">RESTApiClusterManager.RoleCommand</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/IntegrationTestRegionReplicaPerf.Stat.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestRegionReplicaPerf.Stat</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/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/IntegrationTestDDLMasterFailover.ACTION.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">IntegrationTestDDLMasterFailover.ACTION</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
index d5fd1af..47bd2a4 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/procedure/package-tree.html
@@ -81,14 +81,14 @@
 <ul>
 <li type="circle">java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.Procedure&lt;TEnvironment&gt; (implements java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)
+<li type="circle">org.apache.hadoop.hbase.procedure.Procedure (implements java.util.concurrent.<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable.html?is-external=true" title="class or interface in java.util.concurrent">Callable</a>&lt;V&gt;, org.apache.hadoop.hbase.errorhandling.ForeignExceptionListener)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureDescriber.TestProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedureDescriber.TestProcedure</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedure.LatchedProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedure.LatchedProcedure</span></a></li>
 </ul>
 </li>
-<li type="circle">org.apache.hadoop.hbase.procedure.Procedure (implements java.util.concurrent.<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Callable.html?is-external=true" title="class or interface in java.util.concurrent">Callable</a>&lt;V&gt;, org.apache.hadoop.hbase.errorhandling.ForeignExceptionListener)
+<li type="circle">org.apache.hadoop.hbase.procedure2.Procedure&lt;TEnvironment&gt; (implements java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedure.LatchedProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedure.LatchedProcedure</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure.<a href="../../../../../org/apache/hadoop/hbase/procedure/TestProcedureDescriber.TestProcedure.html" title="class in org.apache.hadoop.hbase.procedure"><span class="typeNameLink">TestProcedureDescriber.TestProcedure</span></a></li>
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.procedure.ProcedureManager

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
index 5ff4932..def23ed 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
@@ -206,8 +206,8 @@
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/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/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestStateMachineProcedure.TestSMProcedureState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestStateMachineProcedure.TestSMProcedureState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/TestProcedureRecovery.TestStateMachineProcedure.State.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">TestProcedureRecovery.TestStateMachineProcedure.State</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
index 18395a4..6820f80 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
@@ -109,7 +109,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.44">TestMemstoreLABWithoutPool</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.47">TestMemstoreLABWithoutPool</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>
 </li>
 </ul>
@@ -228,7 +228,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>conf</h4>
-<pre>private static final&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.45">conf</a></pre>
+<pre>private static final&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.48">conf</a></pre>
 </li>
 </ul>
 <a name="rk">
@@ -237,7 +237,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>rk</h4>
-<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.47">rk</a></pre>
+<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.50">rk</a></pre>
 </li>
 </ul>
 <a name="cf">
@@ -246,7 +246,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>cf</h4>
-<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.48">cf</a></pre>
+<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.51">cf</a></pre>
 </li>
 </ul>
 <a name="q">
@@ -255,7 +255,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>q</h4>
-<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.49">q</a></pre>
+<pre>private static final&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.52">q</a></pre>
 </li>
 </ul>
 </li>
@@ -272,7 +272,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestMemstoreLABWithoutPool</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.44">TestMemstoreLABWithoutPool</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.47">TestMemstoreLABWithoutPool</a>()</pre>
 </li>
 </ul>
 </li>
@@ -289,7 +289,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setUpBeforeClass</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.52">setUpBeforeClass</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.55">setUpBeforeClass</a>()
                              throws <a href="http://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>
@@ -303,7 +303,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testLABRandomAllocation</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.64">testLABRandomAllocation</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.67">testLABRandomAllocation</a>()</pre>
 <div class="block">Test a bunch of random allocations</div>
 </li>
 </ul>
@@ -313,7 +313,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testLABChunkQueueWithMultipleMSLABs</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.100">testLABChunkQueueWithMultipleMSLABs</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.103">testLABChunkQueueWithMultipleMSLABs</a>()
                                          throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Test frequent chunk retirement with chunk pool triggered by lots of threads, making sure
  there's no memory leak (HBASE-16195)</div>
@@ -329,7 +329,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getChunkQueueTestThread</h4>
-<pre>private&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.147">getChunkQueueTestThread</a>(org.apache.hadoop.hbase.regionserver.MemStoreLABImpl&nbsp;mslab,
+<pre>private&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html#line.150">getChunkQueueTestThread</a>(org.apache.hadoop.hbase.regionserver.MemStoreLABImpl&nbsp;mslab,
                                        <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>&nbsp;threadName,
                                        org.apache.hadoop.hbase.Cell&nbsp;cellToCopyInto)</pre>
 </li>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
index df101f4..7868226 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
@@ -631,10 +631,10 @@
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/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/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>
 </ul>
 </li>
 </ul>


[15/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/checkstyle-aggregate.html
----------------------------------------------------------------------
diff --git a/checkstyle-aggregate.html b/checkstyle-aggregate.html
index 826750d..b7b7e6c 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -289,7 +289,7 @@
 <td>3487</td>
 <td>0</td>
 <td>0</td>
-<td>18208</td></tr></table></div>
+<td>18209</td></tr></table></div>
 <div class="section">
 <h2><a name="Files"></a>Files</h2>
 <table border="0" class="table table-striped">
@@ -11344,76 +11344,81 @@
 <td>0</td>
 <td>1</td></tr>
 <tr class="a">
+<td><a href="#org.apache.hadoop.hbase.zookeeper.TestZKLeaderManager.java">org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.java</a></td>
+<td>0</td>
+<td>0</td>
+<td>1</td></tr>
+<tr class="b">
 <td><a href="#org.apache.hadoop.hbase.zookeeper.ZKConfig.java">org/apache/hadoop/hbase/zookeeper/ZKConfig.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>3</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.hbase.zookeeper.ZKMainServer.java">org/apache/hadoop/hbase/zookeeper/ZKMainServer.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>3</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.hbase.zookeeper.ZKMetadata.java">org/apache/hadoop/hbase/zookeeper/ZKMetadata.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.hbase.zookeeper.ZKWatcher.java">org/apache/hadoop/hbase/zookeeper/ZKWatcher.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>5</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.hbase.zookeeper.ZNodePaths.java">org/apache/hadoop/hbase/zookeeper/ZNodePaths.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>26</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.metrics2.impl.JmxCacheBuster.java">org/apache/hadoop/metrics2/impl/JmxCacheBuster.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>2</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.metrics2.lib.DefaultMetricsSystemHelper.java">org/apache/hadoop/metrics2/lib/DefaultMetricsSystemHelper.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.metrics2.lib.DynamicMetricsRegistry.java">org/apache/hadoop/metrics2/lib/DynamicMetricsRegistry.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>14</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.metrics2.lib.MetricsExecutorImpl.java">org/apache/hadoop/metrics2/lib/MetricsExecutorImpl.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.metrics2.lib.MutableHistogram.java">org/apache/hadoop/metrics2/lib/MutableHistogram.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.metrics2.lib.MutableRangeHistogram.java">org/apache/hadoop/metrics2/lib/MutableRangeHistogram.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.metrics2.lib.MutableSizeHistogram.java">org/apache/hadoop/metrics2/lib/MutableSizeHistogram.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>1</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.metrics2.lib.MutableTimeHistogram.java">org/apache/hadoop/metrics2/lib/MutableTimeHistogram.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>2</td></tr>
-<tr class="b">
+<tr class="a">
 <td><a href="#org.apache.hadoop.metrics2.util.MetricQuantile.java">org/apache/hadoop/metrics2/util/MetricQuantile.java</a></td>
 <td>0</td>
 <td>0</td>
 <td>2</td></tr>
-<tr class="a">
+<tr class="b">
 <td><a href="#org.apache.hadoop.metrics2.util.MetricSampleQuantiles.java">org/apache/hadoop/metrics2/util/MetricSampleQuantiles.java</a></td>
 <td>0</td>
 <td>0</td>
@@ -11421,72 +11426,72 @@
 <div class="section">
 <h2><a name="Rules"></a>Rules</h2>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Category</th>
 <th>Rule</th>
 <th>Violations</th>
 <th>Severity</th></tr>
-<tr class="a">
+<tr class="b">
 <td>annotation</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_annotation.html#MissingDeprecated">MissingDeprecated</a></td>
 <td>149</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td>blocks</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_blocks.html#EmptyBlock">EmptyBlock</a></td>
 <td>48</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_blocks.html#LeftCurly">LeftCurly</a></td>
 <td>219</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_blocks.html#NeedBraces">NeedBraces</a></td>
 <td>2054</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td>coding</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_coding.html#EmptyStatement">EmptyStatement</a></td>
 <td>33</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_coding.html#EqualsHashCode">EqualsHashCode</a></td>
 <td>7</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_coding.html#InnerAssignment">InnerAssignment</a></td>
 <td>106</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_coding.html#MissingSwitchDefault">MissingSwitchDefault</a></td>
 <td>51</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_coding.html#NoFinalizer">NoFinalizer</a></td>
 <td>1</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td>design</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_design.html#FinalClass">FinalClass</a></td>
 <td>62</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_design.html#HideUtilityClassConstructor">HideUtilityClassConstructor</a></td>
 <td>113</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_design.html#InterfaceIsType">InterfaceIsType</a></td>
 <td>1</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_design.html#VisibilityModifier">VisibilityModifier</a>
 <ul>
@@ -11494,12 +11499,12 @@
 <li>packageAllowed: <tt>&quot;true&quot;</tt></li></ul></td>
 <td>135</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td>imports</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_imports.html#AvoidStarImport">AvoidStarImport</a></td>
 <td>106</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_imports.html#ImportOrder">ImportOrder</a>
 <ul>
@@ -11509,19 +11514,19 @@
 <li>option: <tt>&quot;top&quot;</tt></li></ul></td>
 <td>1938</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_imports.html#RedundantImport">RedundantImport</a></td>
 <td>32</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_imports.html#UnusedImports">UnusedImports</a>
 <ul>
 <li>processJavadoc: <tt>&quot;true&quot;</tt></li></ul></td>
-<td>153</td>
+<td>154</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td>indentation</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_indentation.html#Indentation">Indentation</a>
 <ul>
@@ -11532,29 +11537,29 @@
 <li>lineWrappingIndentation: <tt>&quot;2&quot;</tt></li></ul></td>
 <td>5359</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td>javadoc</td>
 <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>790</td>
+<td>805</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_javadoc.html#NonEmptyAtclauseDescription">NonEmptyAtclauseDescription</a></td>
-<td>4068</td>
+<td>4053</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td>misc</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_misc.html#ArrayTypeStyle">ArrayTypeStyle</a></td>
 <td>153</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_misc.html#UpperEll">UpperEll</a></td>
 <td>344</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td>sizes</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_sizes.html#LineLength">LineLength</a>
 <ul>
@@ -11562,22 +11567,22 @@
 <li>ignorePattern: <tt>&quot;^package.*|^import.*|a href|href|http://|https://|ftp://|org.apache.thrift.|com.google.protobuf.|hbase.protobuf.generated&quot;</tt></li></ul></td>
 <td>1719</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_sizes.html#MethodLength">MethodLength</a></td>
 <td>71</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td>whitespace</td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_whitespace.html#FileTabCharacter">FileTabCharacter</a></td>
 <td>10</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="b">
+<tr class="a">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_whitespace.html#MethodParamPad">MethodParamPad</a></td>
 <td>200</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
-<tr class="a">
+<tr class="b">
 <td></td>
 <td><a class="externalLink" href="http://checkstyle.sourceforge.net/config_whitespace.html#ParenPad">ParenPad</a></td>
 <td>286</td>
@@ -11587,49 +11592,49 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.AcidGuaranteesTestTool.java">org/apache/hadoop/hbase/AcidGuaranteesTestTool.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>138</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>162</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>213</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>214</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>279</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>280</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
@@ -11638,301 +11643,301 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.AsyncMetaTableAccessor.java">org/apache/hadoop/hbase/AsyncMetaTableAccessor.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>design</td>
 <td>HideUtilityClassConstructor</td>
 <td>Utility classes should not have a public or default constructor.</td>
 <td>62</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>109</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'lambda arguments' have incorrect indentation level 8, expected level should be 14.</td>
 <td>121</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' have incorrect indentation level 10, expected level should be 16.</td>
 <td>122</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 12, expected level should be 18.</td>
 <td>123</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 12, expected level should be 18.</td>
 <td>124</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if rcurly' have incorrect indentation level 10, expected level should be 16.</td>
 <td>125</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 10, expected level should be 16.</td>
 <td>126</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block rcurly' have incorrect indentation level 8, expected level should be 14.</td>
 <td>128</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>138</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>178</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>191</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>217</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 117).</td>
 <td>233</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>244</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>275</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>288</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>394</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>396</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>404</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>412</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>457</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>462</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>480</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>492</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>493</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>494</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>495</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>496</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>497</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>498</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>499</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>500</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>501</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>515</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>516</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>517</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>518</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>519</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>520</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>521</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>522</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>523</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'case' child have incorrect indentation level 6, expected level should be 8.</td>
 <td>524</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>525</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>526</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>527</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'block' child have incorrect indentation level 8, expected level should be 10.</td>
 <td>528</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -11941,19 +11946,19 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.AuthUtil.java">org/apache/hadoop/hbase/AuthUtil.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>design</td>
 <td>FinalClass</td>
 <td>Class AuthUtil should be declared as final.</td>
 <td>69</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -11962,25 +11967,25 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ByteBufferKeyOnlyKeyValue.java">org/apache/hadoop/hbase/ByteBufferKeyOnlyKeyValue.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>59</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>60</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -11989,13 +11994,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CategoryBasedTimeout.java">org/apache/hadoop/hbase/CategoryBasedTimeout.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>annotation</td>
 <td>MissingDeprecated</td>
@@ -12004,13 +12009,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.Cell.java">org/apache/hadoop/hbase/Cell.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
@@ -12019,31 +12024,31 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CellBuilderFactory.java">org/apache/hadoop/hbase/CellBuilderFactory.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 109).</td>
 <td>25</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 107).</td>
 <td>27</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 113).</td>
 <td>28</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
@@ -12052,85 +12057,85 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CellComparatorImpl.java">org/apache/hadoop/hbase/CellComparatorImpl.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>66</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>67</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>69</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>75</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>78</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>105</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>106</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>138</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>139</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>176</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>177</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>264</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12139,13 +12144,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CellScanner.java">org/apache/hadoop/hbase/CellScanner.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12154,409 +12159,409 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CellUtil.java">org/apache/hadoop/hbase/CellUtil.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>143</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>156</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>157</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>376</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>377</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>378</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>389</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>390</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>391</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>annotation</td>
 <td>MissingDeprecated</td>
 <td>Must include both @java.lang.Deprecated annotation and @deprecated Javadoc tag with description.</td>
 <td>402</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>420</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>522</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>534</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>535</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>552</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>553</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>554</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>597</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>615</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>618</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>626</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>630</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>635</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>637</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>640</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>660</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>670</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>676</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>685</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>703</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>718</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>719</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>816</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>830</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>844</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>859</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>986</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1013</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1026</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1027</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1028</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1107</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1108</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1119</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1120</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1131</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1145</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1146</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1159</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1185</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1199</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1217</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>1227</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1248</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>1250</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1260</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1261</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1262</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1263</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1264</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1355</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1356</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>1362</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1385</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>1386</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>1471</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12565,31 +12570,31 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ChoreService.java">org/apache/hadoop/hbase/ChoreService.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>172</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>302</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>374</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12598,31 +12603,31 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ClassFinder.java">org/apache/hadoop/hbase/ClassFinder.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>LeftCurly</td>
 <td>'{' at column 54 should have line break after.</td>
 <td>70</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>LeftCurly</td>
 <td>'{' at column 46 should have line break after.</td>
 <td>71</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>LeftCurly</td>
 <td>'{' at column 40 should have line break after.</td>
 <td>72</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>LeftCurly</td>
@@ -12631,31 +12636,31 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ClusterId.java">org/apache/hadoop/hbase/ClusterId.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
 <td>Wrong order for 'org.apache.hadoop.hbase.exceptions.DeserializationException' import.</td>
 <td>25</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
 <td>Wrong order for 'org.apache.hadoop.hbase.util.Bytes' import.</td>
 <td>28</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>60</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12664,13 +12669,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ClusterManager.java">org/apache/hadoop/hbase/ClusterManager.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
@@ -12679,13 +12684,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ClusterStatus.java">org/apache/hadoop/hbase/ClusterStatus.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12694,25 +12699,25 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CompoundConfiguration.java">org/apache/hadoop/hbase/CompoundConfiguration.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'member def modifier' have incorrect indentation level 3, expected level should be 4.</td>
 <td>78</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>182</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12721,13 +12726,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CoordinatedStateException.java">org/apache/hadoop/hbase/CoordinatedStateException.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
@@ -12736,13 +12741,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.CoordinatedStateManager.java">org/apache/hadoop/hbase/CoordinatedStateManager.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
@@ -12751,19 +12756,19 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.Coprocessor.java">org/apache/hadoop/hbase/Coprocessor.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
 <td>Wrong order for 'com.google.protobuf.Service' import.</td>
 <td>25</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
@@ -12772,25 +12777,25 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.DistributedHBaseCluster.java">org/apache/hadoop/hbase/DistributedHBaseCluster.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>81</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>438</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12799,25 +12804,25 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.DoNotRetryIOException.java">org/apache/hadoop/hbase/DoNotRetryIOException.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>40</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>47</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12826,13 +12831,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.DroppedSnapshotException.java">org/apache/hadoop/hbase/DroppedSnapshotException.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12841,13 +12846,13 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.ExtendedCell.java">org/apache/hadoop/hbase/ExtendedCell.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12856,19 +12861,19 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.GenericTestUtils.java">org/apache/hadoop/hbase/GenericTestUtils.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>LeftCurly</td>
 <td>'{' at column 3 should be on the previous line.</td>
 <td>99</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -12877,19 +12882,19 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseCluster.java">org/apache/hadoop/hbase/HBaseCluster.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>353</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -12898,19 +12903,19 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseClusterManager.java">org/apache/hadoop/hbase/HBaseClusterManager.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
 <td>Line is longer than 100 characters (found 104).</td>
 <td>68</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>sizes</td>
 <td>LineLength</td>
@@ -12919,85 +12924,85 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseCommonTestingUtility.java">org/apache/hadoop/hbase/HBaseCommonTestingUtility.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'array initialization' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>60</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>100</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>101</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>111</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>114</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>135</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>153</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>168</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>181</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>193</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>194</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>207</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
@@ -13006,43 +13011,43 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseConfiguration.java">org/apache/hadoop/hbase/HBaseConfiguration.java</h3>
 <table border="0" class="table table-striped">
-<tr class="a">
+<tr class="b">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>66</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>100</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'catch' child have incorrect indentation level 7, expected level should be 6.</td>
 <td>164</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>181</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>210</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -13051,217 +13056,217 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseTestCase.java">org/apache/hadoop/hbase/HBaseTestCase.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>imports</td>
 <td>ImportOrder</td>
 <td>Wrong order for 'junit.framework.AssertionFailedError' import.</td>
 <td>43</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>90</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>140</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def modifier' have incorrect indentation level 4, expected level should be 2.</td>
 <td>143</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>144</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def rcurly' have incorrect indentation level 4, expected level should be 2.</td>
 <td>145</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>150</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>151</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>152</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>154</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>223</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>224</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>225</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>226</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>249</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>267</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>285</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>367</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>368</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>369</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>370</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>372</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' have incorrect indentation level 6, expected level should be 4.</td>
 <td>374</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 8, expected level should be 6.</td>
 <td>375</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if rcurly' have incorrect indentation level 6, expected level should be 4.</td>
 <td>377</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' have incorrect indentation level 8, expected level should be 6.</td>
 <td>378</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 10, expected level should be 8.</td>
 <td>379</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if rcurly' have incorrect indentation level 8, expected level should be 6.</td>
 <td>382</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' have incorrect indentation level 8, expected level should be 6.</td>
 <td>383</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 10, expected level should be 8.</td>
 <td>384</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if rcurly' have incorrect indentation level 8, expected level should be 6.</td>
 <td>387</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'else rcurly' have incorrect indentation level 6, expected level should be 4.</td>
 <td>388</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def rcurly' have incorrect indentation level 4, expected level should be 2.</td>
 <td>389</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>394</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
@@ -13270,1609 +13275,1609 @@
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.HBaseTestingUtility.java">org/apache/hadoop/hbase/HBaseTestingUtility.java</h3>
 <table border="0" class="table table-striped">
-<tr class="b">
+<tr class="a">
 <th>Severity</th>
 <th>Category</th>
 <th>Rule</th>
 <th>Message</th>
 <th>Line</th></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>364</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>366</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'if' child have incorrect indentation level 7, expected level should be 8.</td>
 <td>443</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method call' child have incorrect indentation level 9, expected level should be 10.</td>
 <td>444</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method call' child have incorrect indentation level 9, expected level should be 10.</td>
 <td>445</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method call' child have incorrect indentation level 9, expected level should be 10.</td>
 <td>446</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method call rparen' have incorrect indentation level 7, expected level should be 8.</td>
 <td>447</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>459</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>541</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>545</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>553</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
 <td>557</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>565</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>575</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>590</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>594</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>whitespace</td>
 <td>ParenPad</td>
 <td>'(' is followed by whitespace.</td>
 <td>596</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>608</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>612</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>649</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>misc</td>
 <td>ArrayTypeStyle</td>
 <td>Array brackets at illegal position.</td>
 <td>649</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>744</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>759</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>769</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>781</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>796</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>797</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>798</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>799</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>816</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>indentation</td>
 <td>Indentation</td>
 <td>'method def' child have incorrect indentation level 6, expected level should be 4.</td>
 <td>823</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>828</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>851</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>852</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>854</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>855</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>856</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>857</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>858</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>859</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>861</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>862</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>863</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>864</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>865</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>890</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>891</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>893</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>894</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>895</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>896</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>897</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>898</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>900</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>901</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>902</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>903</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>JavadocTagContinuationIndentation</td>
 <td>Line continuation have incorrect indentation level, expected level should be 2.</td>
 <td>906</td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>javadoc</td>
 <td>NonEmptyAtclauseDescription</td>
 <td>At-clause should have a non-empty description.</td>
 <td>907</td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>


<TRUNCATED>

[02/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
index 56f3e7a..98acf2d 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
@@ -42,175 +42,175 @@
 <span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.34"></a>
 <span class="sourceLineNo">035</span>import org.apache.hadoop.hbase.testclassification.ZKTests;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.junit.AfterClass;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.junit.BeforeClass;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.junit.Test;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.junit.experimental.categories.Category;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.slf4j.Logger;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.slf4j.LoggerFactory;<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.44"></a>
-<span class="sourceLineNo">045</span>public class TestZKLeaderManager {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>  private static final String LEADER_ZNODE =<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>  private static class MockAbortable implements Abortable {<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    private boolean aborted;<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>    @Override<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    public void abort(String why, Throwable e) {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      aborted = true;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      fail("Aborted during test: " + why);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    }<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>    @Override<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    public boolean isAborted() {<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      return aborted;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>  }<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    private boolean stopped;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    private ZKWatcher watcher;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    private ZKLeaderManager zkLeader;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    private int index;<a name="line.72"></a>
-<span class="sourceLineNo">073</span><a name="line.73"></a>
-<span class="sourceLineNo">074</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      setDaemon(true);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      this.index = index;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      this.watcher = watcher;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.79"></a>
-<span class="sourceLineNo">080</span>          Bytes.toBytes(index), this);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    }<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>    public boolean isMaster() {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      return master.get();<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>    public int getIndex() {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      return index;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>    public ZKWatcher getWatcher() {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>      return watcher;<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    }<a name="line.93"></a>
-<span class="sourceLineNo">094</span><a name="line.94"></a>
-<span class="sourceLineNo">095</span>    @Override<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    public void run() {<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      while (!stopped) {<a name="line.97"></a>
-<span class="sourceLineNo">098</span>        zkLeader.start();<a name="line.98"></a>
-<span class="sourceLineNo">099</span>        zkLeader.waitToBecomeLeader();<a name="line.99"></a>
-<span class="sourceLineNo">100</span>        master.set(true);<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.102"></a>
-<span class="sourceLineNo">103</span>          try {<a name="line.103"></a>
-<span class="sourceLineNo">104</span>            Thread.sleep(10);<a name="line.104"></a>
-<span class="sourceLineNo">105</span>          } catch (InterruptedException ignored) {}<a name="line.105"></a>
-<span class="sourceLineNo">106</span>        }<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      }<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    }<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>    public void abdicate() {<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      zkLeader.stepDownAsLeader();<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      master.set(false);<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    }<a name="line.113"></a>
-<span class="sourceLineNo">114</span><a name="line.114"></a>
-<span class="sourceLineNo">115</span>    @Override<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    public void stop(String why) {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      stopped = true;<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      abdicate();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      watcher.close();<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    }<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    @Override<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    public boolean isStopped() {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      return stopped;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>  }<a name="line.126"></a>
-<span class="sourceLineNo">127</span><a name="line.127"></a>
-<span class="sourceLineNo">128</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static MockLeader[] CANDIDATES;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  @BeforeClass<a name="line.131"></a>
-<span class="sourceLineNo">132</span>  public static void setupBeforeClass() throws Exception {<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    TEST_UTIL.startMiniZKCluster();<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    MockAbortable abortable = new MockAbortable();<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    CANDIDATES = new MockLeader[3];<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    for (int i = 0; i &lt; 3; i++) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      CANDIDATES[i].start();<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    }<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  @AfterClass<a name="line.147"></a>
-<span class="sourceLineNo">148</span>  public static void tearDownAfterClass() throws Exception {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @Test<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void testLeaderSelection() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    // one leader should have been found<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    assertEquals("Leader znode should match leader index",<a name="line.164"></a>
-<span class="sourceLineNo">165</span>        currentLeader.getIndex(), storedIndex);<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // force a leader transition<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    currentLeader.abdicate();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    assertFalse(currentLeader.isMaster());<a name="line.169"></a>
-<span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>    // check for new leader<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    currentLeader = getCurrentLeader();<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    // one leader should have been found<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    assertEquals("Leader znode should match leader index",<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        currentLeader.getIndex(), storedIndex);<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>    // force another transition by stopping the current<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    currentLeader.stop("Stopping for test");<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    assertFalse(currentLeader.isMaster());<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>    // check for new leader<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    currentLeader = getCurrentLeader();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    // one leader should have been found<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    assertEquals("Leader znode should match leader index",<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        currentLeader.getIndex(), storedIndex);<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    currentLeader.stop("Stopping for test");<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    assertFalse(currentLeader.isMaster());<a name="line.205"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.junit.AfterClass;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.junit.BeforeClass;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.junit.Test;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.junit.experimental.categories.Category;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.slf4j.Logger;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.slf4j.LoggerFactory;<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.45"></a>
+<span class="sourceLineNo">046</span>public class TestZKLeaderManager {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>  private static final String LEADER_ZNODE =<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>  private static class MockAbortable implements Abortable {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    private boolean aborted;<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>    @Override<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    public void abort(String why, Throwable e) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      aborted = true;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      fail("Aborted during test: " + why);<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>    @Override<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    public boolean isAborted() {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      return aborted;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    }<a name="line.65"></a>
+<span class="sourceLineNo">066</span>  }<a name="line.66"></a>
+<span class="sourceLineNo">067</span><a name="line.67"></a>
+<span class="sourceLineNo">068</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    private volatile boolean stopped;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    private ZKWatcher watcher;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    private ZKLeaderManager zkLeader;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    private int index;<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      setDaemon(true);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      this.index = index;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      this.watcher = watcher;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.80"></a>
+<span class="sourceLineNo">081</span>          Bytes.toBytes(index), this);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>    public boolean isMaster() {<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      return master.get();<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>    public int getIndex() {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      return index;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    }<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>    public ZKWatcher getWatcher() {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      return watcher;<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>    @Override<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    public void run() {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      while (!stopped) {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>        zkLeader.start();<a name="line.99"></a>
+<span class="sourceLineNo">100</span>        zkLeader.waitToBecomeLeader();<a name="line.100"></a>
+<span class="sourceLineNo">101</span>        master.set(true);<a name="line.101"></a>
+<span class="sourceLineNo">102</span><a name="line.102"></a>
+<span class="sourceLineNo">103</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>          try {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>            Thread.sleep(10);<a name="line.105"></a>
+<span class="sourceLineNo">106</span>          } catch (InterruptedException ignored) {}<a name="line.106"></a>
+<span class="sourceLineNo">107</span>        }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>      }<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    }<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>    public void abdicate() {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>      zkLeader.stepDownAsLeader();<a name="line.112"></a>
+<span class="sourceLineNo">113</span>      master.set(false);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    }<a name="line.114"></a>
+<span class="sourceLineNo">115</span><a name="line.115"></a>
+<span class="sourceLineNo">116</span>    @Override<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    public void stop(String why) {<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      stopped = true;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      abdicate();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      Threads.sleep(100);<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      watcher.close();<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    }<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>    @Override<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    public boolean isStopped() {<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      return stopped;<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static MockLeader[] CANDIDATES;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @BeforeClass<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  public static void setupBeforeClass() throws Exception {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    TEST_UTIL.startMiniZKCluster();<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.137"></a>
+<span class="sourceLineNo">138</span><a name="line.138"></a>
+<span class="sourceLineNo">139</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    MockAbortable abortable = new MockAbortable();<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    int count = 5;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    CANDIDATES = new MockLeader[count];<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    for (int i = 0; i &lt; count; i++) {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>      CANDIDATES[i].start();<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>  @AfterClass<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  public static void tearDownAfterClass() throws Exception {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.152"></a>
+<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>  @Test<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public void testLeaderSelection() throws Exception {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    // one leader should have been found<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    assertEquals("Leader znode should match leader index",<a name="line.167"></a>
+<span class="sourceLineNo">168</span>        currentLeader.getIndex(), storedIndex);<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>    // force a leader transition<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    currentLeader.abdicate();<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>    // check for new leader<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    currentLeader = getCurrentLeader();<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    // one leader should have been found<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.177"></a>
+<span class="sourceLineNo">178</span><a name="line.178"></a>
+<span class="sourceLineNo">179</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    assertEquals("Leader znode should match leader index",<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        currentLeader.getIndex(), storedIndex);<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>    // force another transition by stopping the current<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    currentLeader.stop("Stopping for test");<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>    // check for new leader<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    currentLeader = getCurrentLeader();<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    // one leader should have been found<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    assertEquals("Leader znode should match leader index",<a name="line.201"></a>
+<span class="sourceLineNo">202</span>        currentLeader.getIndex(), storedIndex);<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    currentLeader.stop("Stopping for test");<a name="line.205"></a>
 <span class="sourceLineNo">206</span><a name="line.206"></a>
 <span class="sourceLineNo">207</span>    // check for new<a name="line.207"></a>
 <span class="sourceLineNo">208</span>    currentLeader = getCurrentLeader();<a name="line.208"></a>
@@ -234,7 +234,7 @@
 <span class="sourceLineNo">226</span>      if (currentLeader != null) {<a name="line.226"></a>
 <span class="sourceLineNo">227</span>        break outer;<a name="line.227"></a>
 <span class="sourceLineNo">228</span>      }<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      Thread.sleep(10);<a name="line.229"></a>
+<span class="sourceLineNo">229</span>      Threads.sleep(100);<a name="line.229"></a>
 <span class="sourceLineNo">230</span>    }<a name="line.230"></a>
 <span class="sourceLineNo">231</span>    return currentLeader;<a name="line.231"></a>
 <span class="sourceLineNo">232</span>  }<a name="line.232"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
index 56f3e7a..98acf2d 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
@@ -42,175 +42,175 @@
 <span class="sourceLineNo">034</span>import org.apache.hadoop.hbase.testclassification.MediumTests;<a name="line.34"></a>
 <span class="sourceLineNo">035</span>import org.apache.hadoop.hbase.testclassification.ZKTests;<a name="line.35"></a>
 <span class="sourceLineNo">036</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.36"></a>
-<span class="sourceLineNo">037</span>import org.junit.AfterClass;<a name="line.37"></a>
-<span class="sourceLineNo">038</span>import org.junit.BeforeClass;<a name="line.38"></a>
-<span class="sourceLineNo">039</span>import org.junit.Test;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.junit.experimental.categories.Category;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.slf4j.Logger;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import org.slf4j.LoggerFactory;<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.44"></a>
-<span class="sourceLineNo">045</span>public class TestZKLeaderManager {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>  private static final String LEADER_ZNODE =<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>  private static class MockAbortable implements Abortable {<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    private boolean aborted;<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>    @Override<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    public void abort(String why, Throwable e) {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      aborted = true;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      fail("Aborted during test: " + why);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    }<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>    @Override<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    public boolean isAborted() {<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      return aborted;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>  }<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    private boolean stopped;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    private ZKWatcher watcher;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    private ZKLeaderManager zkLeader;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    private int index;<a name="line.72"></a>
-<span class="sourceLineNo">073</span><a name="line.73"></a>
-<span class="sourceLineNo">074</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      setDaemon(true);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      this.index = index;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      this.watcher = watcher;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.79"></a>
-<span class="sourceLineNo">080</span>          Bytes.toBytes(index), this);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    }<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>    public boolean isMaster() {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      return master.get();<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    }<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>    public int getIndex() {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      return index;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    }<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>    public ZKWatcher getWatcher() {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>      return watcher;<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    }<a name="line.93"></a>
-<span class="sourceLineNo">094</span><a name="line.94"></a>
-<span class="sourceLineNo">095</span>    @Override<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    public void run() {<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      while (!stopped) {<a name="line.97"></a>
-<span class="sourceLineNo">098</span>        zkLeader.start();<a name="line.98"></a>
-<span class="sourceLineNo">099</span>        zkLeader.waitToBecomeLeader();<a name="line.99"></a>
-<span class="sourceLineNo">100</span>        master.set(true);<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.102"></a>
-<span class="sourceLineNo">103</span>          try {<a name="line.103"></a>
-<span class="sourceLineNo">104</span>            Thread.sleep(10);<a name="line.104"></a>
-<span class="sourceLineNo">105</span>          } catch (InterruptedException ignored) {}<a name="line.105"></a>
-<span class="sourceLineNo">106</span>        }<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      }<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    }<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>    public void abdicate() {<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      zkLeader.stepDownAsLeader();<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      master.set(false);<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    }<a name="line.113"></a>
-<span class="sourceLineNo">114</span><a name="line.114"></a>
-<span class="sourceLineNo">115</span>    @Override<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    public void stop(String why) {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      stopped = true;<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      abdicate();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      watcher.close();<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    }<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>    @Override<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    public boolean isStopped() {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      return stopped;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    }<a name="line.125"></a>
-<span class="sourceLineNo">126</span>  }<a name="line.126"></a>
-<span class="sourceLineNo">127</span><a name="line.127"></a>
-<span class="sourceLineNo">128</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.128"></a>
-<span class="sourceLineNo">129</span>  private static MockLeader[] CANDIDATES;<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>  @BeforeClass<a name="line.131"></a>
-<span class="sourceLineNo">132</span>  public static void setupBeforeClass() throws Exception {<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    TEST_UTIL.startMiniZKCluster();<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    MockAbortable abortable = new MockAbortable();<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    CANDIDATES = new MockLeader[3];<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    for (int i = 0; i &lt; 3; i++) {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      CANDIDATES[i].start();<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    }<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  @AfterClass<a name="line.147"></a>
-<span class="sourceLineNo">148</span>  public static void tearDownAfterClass() throws Exception {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.149"></a>
-<span class="sourceLineNo">150</span>  }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>  @Test<a name="line.152"></a>
-<span class="sourceLineNo">153</span>  public void testLeaderSelection() throws Exception {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    // one leader should have been found<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    assertEquals("Leader znode should match leader index",<a name="line.164"></a>
-<span class="sourceLineNo">165</span>        currentLeader.getIndex(), storedIndex);<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>    // force a leader transition<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    currentLeader.abdicate();<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    assertFalse(currentLeader.isMaster());<a name="line.169"></a>
-<span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>    // check for new leader<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    currentLeader = getCurrentLeader();<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    // one leader should have been found<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    assertEquals("Leader znode should match leader index",<a name="line.182"></a>
-<span class="sourceLineNo">183</span>        currentLeader.getIndex(), storedIndex);<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>    // force another transition by stopping the current<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    currentLeader.stop("Stopping for test");<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    assertFalse(currentLeader.isMaster());<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>    // check for new leader<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    currentLeader = getCurrentLeader();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    // one leader should have been found<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    assertEquals("Leader znode should match leader index",<a name="line.200"></a>
-<span class="sourceLineNo">201</span>        currentLeader.getIndex(), storedIndex);<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    currentLeader.stop("Stopping for test");<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    assertFalse(currentLeader.isMaster());<a name="line.205"></a>
+<span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.util.Threads;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>import org.junit.AfterClass;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>import org.junit.BeforeClass;<a name="line.39"></a>
+<span class="sourceLineNo">040</span>import org.junit.Test;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.junit.experimental.categories.Category;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.slf4j.Logger;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import org.slf4j.LoggerFactory;<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>@Category({ ZKTests.class, MediumTests.class })<a name="line.45"></a>
+<span class="sourceLineNo">046</span>public class TestZKLeaderManager {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>  private static final Logger LOG = LoggerFactory.getLogger(TestZKLeaderManager.class);<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>  private static final String LEADER_ZNODE =<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      "/test/" + TestZKLeaderManager.class.getSimpleName();<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>  private static class MockAbortable implements Abortable {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    private boolean aborted;<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>    @Override<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    public void abort(String why, Throwable e) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      aborted = true;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      LOG.error(HBaseMarkers.FATAL, "Aborting during test: "+why, e);<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      fail("Aborted during test: " + why);<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>    @Override<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    public boolean isAborted() {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      return aborted;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    }<a name="line.65"></a>
+<span class="sourceLineNo">066</span>  }<a name="line.66"></a>
+<span class="sourceLineNo">067</span><a name="line.67"></a>
+<span class="sourceLineNo">068</span>  private static class MockLeader extends Thread implements Stoppable {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    private volatile boolean stopped;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    private ZKWatcher watcher;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    private ZKLeaderManager zkLeader;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    private AtomicBoolean master = new AtomicBoolean(false);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    private int index;<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>    public MockLeader(ZKWatcher watcher, int index) {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      setDaemon(true);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      setName("TestZKLeaderManager-leader-" + index);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      this.index = index;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      this.watcher = watcher;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      this.zkLeader = new ZKLeaderManager(watcher, LEADER_ZNODE,<a name="line.80"></a>
+<span class="sourceLineNo">081</span>          Bytes.toBytes(index), this);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>    public boolean isMaster() {<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      return master.get();<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>    public int getIndex() {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      return index;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    }<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>    public ZKWatcher getWatcher() {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      return watcher;<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    }<a name="line.94"></a>
+<span class="sourceLineNo">095</span><a name="line.95"></a>
+<span class="sourceLineNo">096</span>    @Override<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    public void run() {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      while (!stopped) {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>        zkLeader.start();<a name="line.99"></a>
+<span class="sourceLineNo">100</span>        zkLeader.waitToBecomeLeader();<a name="line.100"></a>
+<span class="sourceLineNo">101</span>        master.set(true);<a name="line.101"></a>
+<span class="sourceLineNo">102</span><a name="line.102"></a>
+<span class="sourceLineNo">103</span>        while (master.get() &amp;&amp; !stopped) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>          try {<a name="line.104"></a>
+<span class="sourceLineNo">105</span>            Thread.sleep(10);<a name="line.105"></a>
+<span class="sourceLineNo">106</span>          } catch (InterruptedException ignored) {}<a name="line.106"></a>
+<span class="sourceLineNo">107</span>        }<a name="line.107"></a>
+<span class="sourceLineNo">108</span>      }<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    }<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>    public void abdicate() {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>      zkLeader.stepDownAsLeader();<a name="line.112"></a>
+<span class="sourceLineNo">113</span>      master.set(false);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    }<a name="line.114"></a>
+<span class="sourceLineNo">115</span><a name="line.115"></a>
+<span class="sourceLineNo">116</span>    @Override<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    public void stop(String why) {<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      stopped = true;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      abdicate();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      Threads.sleep(100);<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      watcher.close();<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    }<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>    @Override<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    public boolean isStopped() {<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      return stopped;<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
+<span class="sourceLineNo">128</span>  }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>  private static HBaseZKTestingUtility TEST_UTIL;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>  private static MockLeader[] CANDIDATES;<a name="line.131"></a>
+<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">133</span>  @BeforeClass<a name="line.133"></a>
+<span class="sourceLineNo">134</span>  public static void setupBeforeClass() throws Exception {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    TEST_UTIL = new HBaseZKTestingUtility();<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    TEST_UTIL.startMiniZKCluster();<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    Configuration conf = TEST_UTIL.getConfiguration();<a name="line.137"></a>
+<span class="sourceLineNo">138</span><a name="line.138"></a>
+<span class="sourceLineNo">139</span>    // use an abortable to fail the test in the case of any KeeperExceptions<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    MockAbortable abortable = new MockAbortable();<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    int count = 5;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    CANDIDATES = new MockLeader[count];<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    for (int i = 0; i &lt; count; i++) {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>      ZKWatcher watcher = newZK(conf, "server"+i, abortable);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      CANDIDATES[i] = new MockLeader(watcher, i);<a name="line.145"></a>
+<span class="sourceLineNo">146</span>      CANDIDATES[i].start();<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    }<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>  @AfterClass<a name="line.150"></a>
+<span class="sourceLineNo">151</span>  public static void tearDownAfterClass() throws Exception {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    TEST_UTIL.shutdownMiniZKCluster();<a name="line.152"></a>
+<span class="sourceLineNo">153</span>  }<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>  @Test<a name="line.155"></a>
+<span class="sourceLineNo">156</span>  public void testLeaderSelection() throws Exception {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    MockLeader currentLeader = getCurrentLeader();<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    // one leader should have been found<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    assertNotNull("Leader should exist", currentLeader);<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    LOG.debug("Current leader index is "+currentLeader.getIndex());<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>    byte[] znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    int storedIndex = Bytes.toInt(znodeData);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    assertEquals("Leader znode should match leader index",<a name="line.167"></a>
+<span class="sourceLineNo">168</span>        currentLeader.getIndex(), storedIndex);<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>    // force a leader transition<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    currentLeader.abdicate();<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>    // check for new leader<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    currentLeader = getCurrentLeader();<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    // one leader should have been found<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    assertNotNull("New leader should exist after abdication", currentLeader);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.177"></a>
+<span class="sourceLineNo">178</span><a name="line.178"></a>
+<span class="sourceLineNo">179</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    assertEquals("Leader znode should match leader index",<a name="line.184"></a>
+<span class="sourceLineNo">185</span>        currentLeader.getIndex(), storedIndex);<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>    // force another transition by stopping the current<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    currentLeader.stop("Stopping for test");<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>    // check for new leader<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    currentLeader = getCurrentLeader();<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    // one leader should have been found<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    assertNotNull("New leader should exist after stop", currentLeader);<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    LOG.debug("New leader index is "+currentLeader.getIndex());<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>    znodeData = ZKUtil.getData(currentLeader.getWatcher(), LEADER_ZNODE);<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    assertNotNull("Leader znode should contain leader index", znodeData);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    assertTrue("Leader znode should not be empty", znodeData.length &gt; 0);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    storedIndex = Bytes.toInt(znodeData);<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    LOG.debug("Stored leader index in ZK is "+storedIndex);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    assertEquals("Leader znode should match leader index",<a name="line.201"></a>
+<span class="sourceLineNo">202</span>        currentLeader.getIndex(), storedIndex);<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>    // with a second stop we can guarantee that a previous leader has resumed leading<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    currentLeader.stop("Stopping for test");<a name="line.205"></a>
 <span class="sourceLineNo">206</span><a name="line.206"></a>
 <span class="sourceLineNo">207</span>    // check for new<a name="line.207"></a>
 <span class="sourceLineNo">208</span>    currentLeader = getCurrentLeader();<a name="line.208"></a>
@@ -234,7 +234,7 @@
 <span class="sourceLineNo">226</span>      if (currentLeader != null) {<a name="line.226"></a>
 <span class="sourceLineNo">227</span>        break outer;<a name="line.227"></a>
 <span class="sourceLineNo">228</span>      }<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      Thread.sleep(10);<a name="line.229"></a>
+<span class="sourceLineNo">229</span>      Threads.sleep(100);<a name="line.229"></a>
 <span class="sourceLineNo">230</span>    }<a name="line.230"></a>
 <span class="sourceLineNo">231</span>    return currentLeader;<a name="line.231"></a>
 <span class="sourceLineNo">232</span>  }<a name="line.232"></a>


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

Posted by gi...@apache.org.
Published site at .


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

Branch: refs/heads/asf-site
Commit: 828b306f9ffa43a86657362c1cd227fafb67ff98
Parents: 277d50b
Author: jenkins <bu...@apache.org>
Authored: Wed Jan 10 15:31:02 2018 +0000
Committer: jenkins <bu...@apache.org>
Committed: Wed Jan 10 15:31:02 2018 +0000

----------------------------------------------------------------------
 acid-semantics.html                             |     4 +-
 apache_hbase_reference_guide.pdf                |     4 +-
 book.html                                       |     2 +-
 bulk-loads.html                                 |     4 +-
 checkstyle-aggregate.html                       | 41040 +++++++++--------
 checkstyle.rss                                  |     4 +-
 coc.html                                        |     4 +-
 cygwin.html                                     |     4 +-
 dependencies.html                               |     4 +-
 dependency-convergence.html                     |     4 +-
 dependency-info.html                            |     4 +-
 dependency-management.html                      |     4 +-
 devapidocs/constant-values.html                 |     6 +-
 .../hadoop/hbase/backup/package-tree.html       |     4 +-
 .../hadoop/hbase/client/package-tree.html       |    18 +-
 .../hadoop/hbase/filter/package-tree.html       |     6 +-
 .../hadoop/hbase/io/hfile/package-tree.html     |     4 +-
 .../apache/hadoop/hbase/ipc/package-tree.html   |     2 +-
 .../hadoop/hbase/mapreduce/package-tree.html    |     4 +-
 .../org/apache/hadoop/hbase/master/HMaster.html |    26 +-
 .../hadoop/hbase/master/package-tree.html       |     4 +-
 .../org/apache/hadoop/hbase/package-tree.html   |    18 +-
 .../hadoop/hbase/procedure2/package-tree.html   |     6 +-
 .../hadoop/hbase/quotas/package-tree.html       |     6 +-
 .../hadoop/hbase/regionserver/package-tree.html |    14 +-
 .../regionserver/querymatcher/package-tree.html |     2 +-
 .../replication/regionserver/package-tree.html  |     2 +-
 .../hadoop/hbase/rest/model/package-tree.html   |     2 +-
 .../security/access/AccessControlLists.html     |    90 +-
 .../hbase/security/access/package-tree.html     |     2 +-
 .../apache/hadoop/hbase/util/package-tree.html  |     8 +-
 .../org/apache/hadoop/hbase/Version.html        |     6 +-
 .../master/HMaster.InitializationMonitor.html   |   421 +-
 .../hbase/master/HMaster.RedirectServlet.html   |   421 +-
 .../org/apache/hadoop/hbase/master/HMaster.html |   421 +-
 .../security/access/AccessControlLists.html     |  1434 +-
 export_control.html                             |     4 +-
 hbase-annotations/checkstyle.html               |     4 +-
 hbase-annotations/dependencies.html             |     4 +-
 hbase-annotations/dependency-convergence.html   |     4 +-
 hbase-annotations/dependency-info.html          |     4 +-
 hbase-annotations/dependency-management.html    |     4 +-
 hbase-annotations/index.html                    |     4 +-
 hbase-annotations/integration.html              |     4 +-
 hbase-annotations/issue-tracking.html           |     4 +-
 hbase-annotations/license.html                  |     4 +-
 hbase-annotations/mail-lists.html               |     4 +-
 hbase-annotations/plugin-management.html        |     4 +-
 hbase-annotations/plugins.html                  |     4 +-
 hbase-annotations/project-info.html             |     4 +-
 hbase-annotations/project-reports.html          |     4 +-
 hbase-annotations/project-summary.html          |     4 +-
 hbase-annotations/source-repository.html        |     4 +-
 hbase-annotations/team-list.html                |     4 +-
 hbase-build-configuration/dependencies.html     |     4 +-
 .../dependency-convergence.html                 |     4 +-
 hbase-build-configuration/dependency-info.html  |     4 +-
 .../dependency-management.html                  |     4 +-
 .../hbase-archetypes/dependencies.html          |     4 +-
 .../dependency-convergence.html                 |     4 +-
 .../hbase-archetypes/dependency-info.html       |     4 +-
 .../hbase-archetypes/dependency-management.html |     4 +-
 .../hbase-archetype-builder/dependencies.html   |     4 +-
 .../dependency-convergence.html                 |     4 +-
 .../dependency-info.html                        |     4 +-
 .../dependency-management.html                  |     4 +-
 .../hbase-archetype-builder/index.html          |     4 +-
 .../hbase-archetype-builder/integration.html    |     4 +-
 .../hbase-archetype-builder/issue-tracking.html |     4 +-
 .../hbase-archetype-builder/license.html        |     4 +-
 .../hbase-archetype-builder/mail-lists.html     |     4 +-
 .../plugin-management.html                      |     4 +-
 .../hbase-archetype-builder/plugins.html        |     4 +-
 .../hbase-archetype-builder/project-info.html   |     4 +-
 .../project-summary.html                        |     4 +-
 .../source-repository.html                      |     4 +-
 .../hbase-archetype-builder/team-list.html      |     4 +-
 .../hbase-client-project/checkstyle.html        |     4 +-
 .../hbase-client-project/dependencies.html      |     4 +-
 .../dependency-convergence.html                 |     4 +-
 .../hbase-client-project/dependency-info.html   |     4 +-
 .../dependency-management.html                  |     4 +-
 .../hbase-client-project/index.html             |     4 +-
 .../hbase-client-project/integration.html       |     4 +-
 .../hbase-client-project/issue-tracking.html    |     4 +-
 .../hbase-client-project/license.html           |     4 +-
 .../hbase-client-project/mail-lists.html        |     4 +-
 .../hbase-client-project/plugin-management.html |     4 +-
 .../hbase-client-project/plugins.html           |     4 +-
 .../hbase-client-project/project-info.html      |     4 +-
 .../hbase-client-project/project-reports.html   |     4 +-
 .../hbase-client-project/project-summary.html   |     4 +-
 .../hbase-client-project/source-repository.html |     4 +-
 .../hbase-client-project/team-list.html         |     4 +-
 .../hbase-shaded-client-project/checkstyle.html |     4 +-
 .../dependencies.html                           |     4 +-
 .../dependency-convergence.html                 |     4 +-
 .../dependency-info.html                        |     4 +-
 .../dependency-management.html                  |     4 +-
 .../hbase-shaded-client-project/index.html      |     4 +-
 .../integration.html                            |     4 +-
 .../issue-tracking.html                         |     4 +-
 .../hbase-shaded-client-project/license.html    |     4 +-
 .../hbase-shaded-client-project/mail-lists.html |     4 +-
 .../plugin-management.html                      |     4 +-
 .../hbase-shaded-client-project/plugins.html    |     4 +-
 .../project-info.html                           |     4 +-
 .../project-reports.html                        |     4 +-
 .../project-summary.html                        |     4 +-
 .../source-repository.html                      |     4 +-
 .../hbase-shaded-client-project/team-list.html  |     4 +-
 .../hbase-archetypes/index.html                 |     4 +-
 .../hbase-archetypes/integration.html           |     4 +-
 .../hbase-archetypes/issue-tracking.html        |     4 +-
 .../hbase-archetypes/license.html               |     4 +-
 .../hbase-archetypes/mail-lists.html            |     4 +-
 .../hbase-archetypes/plugin-management.html     |     4 +-
 .../hbase-archetypes/plugins.html               |     4 +-
 .../hbase-archetypes/project-info.html          |     4 +-
 .../hbase-archetypes/project-summary.html       |     4 +-
 .../hbase-archetypes/source-repository.html     |     4 +-
 .../hbase-archetypes/team-list.html             |     4 +-
 .../hbase-spark/checkstyle.html                 |     4 +-
 .../hbase-spark/dependencies.html               |     4 +-
 .../hbase-spark/dependency-convergence.html     |     4 +-
 .../hbase-spark/dependency-info.html            |     4 +-
 .../hbase-spark/dependency-management.html      |     4 +-
 .../hbase-spark/index.html                      |     4 +-
 .../hbase-spark/integration.html                |     4 +-
 .../hbase-spark/issue-tracking.html             |     4 +-
 .../hbase-spark/license.html                    |     4 +-
 .../hbase-spark/mail-lists.html                 |     4 +-
 .../hbase-spark/plugin-management.html          |     4 +-
 .../hbase-spark/plugins.html                    |     4 +-
 .../hbase-spark/project-info.html               |     4 +-
 .../hbase-spark/project-reports.html            |     4 +-
 .../hbase-spark/project-summary.html            |     4 +-
 .../hbase-spark/source-repository.html          |     4 +-
 .../hbase-spark/team-list.html                  |     4 +-
 hbase-build-configuration/index.html            |     4 +-
 hbase-build-configuration/integration.html      |     4 +-
 hbase-build-configuration/issue-tracking.html   |     4 +-
 hbase-build-configuration/license.html          |     4 +-
 hbase-build-configuration/mail-lists.html       |     4 +-
 .../plugin-management.html                      |     4 +-
 hbase-build-configuration/plugins.html          |     4 +-
 hbase-build-configuration/project-info.html     |     4 +-
 hbase-build-configuration/project-summary.html  |     4 +-
 .../source-repository.html                      |     4 +-
 hbase-build-configuration/team-list.html        |     4 +-
 hbase-shaded-check-invariants/checkstyle.html   |     4 +-
 hbase-shaded-check-invariants/dependencies.html |     4 +-
 .../dependency-convergence.html                 |     4 +-
 .../dependency-info.html                        |     4 +-
 .../dependency-management.html                  |     4 +-
 hbase-shaded-check-invariants/index.html        |     4 +-
 hbase-shaded-check-invariants/integration.html  |     4 +-
 .../issue-tracking.html                         |     4 +-
 hbase-shaded-check-invariants/license.html      |     4 +-
 hbase-shaded-check-invariants/mail-lists.html   |     4 +-
 .../plugin-management.html                      |     4 +-
 hbase-shaded-check-invariants/plugins.html      |     4 +-
 hbase-shaded-check-invariants/project-info.html |     4 +-
 .../project-reports.html                        |     4 +-
 .../project-summary.html                        |     4 +-
 .../source-repository.html                      |     4 +-
 hbase-shaded-check-invariants/team-list.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/index-all.html                   |     9 +-
 .../org/apache/hadoop/hbase/package-tree.html   |    12 +-
 .../hadoop/hbase/procedure/package-tree.html    |     8 +-
 .../hadoop/hbase/procedure2/package-tree.html   |     2 +-
 .../TestMemstoreLABWithoutPool.html             |    20 +-
 .../hadoop/hbase/regionserver/package-tree.html |     2 +-
 .../hbase/rsgroup/TestRSGroupsWithACL.html      |   158 +-
 .../hadoop/hbase/rsgroup/package-summary.html   |     5 +-
 .../hadoop/hbase/rsgroup/package-tree.html      |     6 +-
 .../hbase/security/access/SecureTestUtil.html   |     2 +-
 .../access/class-use/SecureTestUtil.html        |    25 +
 .../hbase/security/access/package-use.html      |    21 +
 .../apache/hadoop/hbase/test/package-tree.html  |     4 +-
 .../apache/hadoop/hbase/wal/package-tree.html   |     2 +-
 .../TestZKLeaderManager.MockAbortable.html      |    10 +-
 .../TestZKLeaderManager.MockLeader.html         |    28 +-
 .../hbase/zookeeper/TestZKLeaderManager.html    |    18 +-
 testdevapidocs/overview-tree.html               |     2 +-
 .../TestMemstoreLABWithoutPool.html             |   259 +-
 .../hbase/rsgroup/TestRSGroupsWithACL.html      |   618 +-
 .../TestZKLeaderManager.MockAbortable.html      |   340 +-
 .../TestZKLeaderManager.MockLeader.html         |   340 +-
 .../hbase/zookeeper/TestZKLeaderManager.html    |   340 +-
 210 files changed, 23434 insertions(+), 23410 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/acid-semantics.html
----------------------------------------------------------------------
diff --git a/acid-semantics.html b/acid-semantics.html
index e4407df..464216a 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) ACID Properties
@@ -606,7 +606,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/apache_hbase_reference_guide.pdf
----------------------------------------------------------------------
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 2a44199..3f14006 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:20180109144851+00'00')
-/CreationDate (D:20180109144851+00'00')
+/ModDate (D:20180110144846+00'00')
+/CreationDate (D:20180110144846+00'00')
 >>
 endobj
 2 0 obj

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/book.html
----------------------------------------------------------------------
diff --git a/book.html b/book.html
index e5d84fa..c53ea05 100644
--- a/book.html
+++ b/book.html
@@ -37247,7 +37247,7 @@ The server will return cellblocks compressed using this same compressor as long
 <div id="footer">
 <div id="footer-text">
 Version 3.0.0-SNAPSHOT<br>
-Last updated 2018-01-09 14:29:44 UTC
+Last updated 2018-01-10 14:29:42 UTC
 </div>
 </div>
 </body>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/bulk-loads.html
----------------------------------------------------------------------
diff --git a/bulk-loads.html b/bulk-loads.html
index f6eae32..73a7be2 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Bulk Loads in Apache HBase (TM)
@@ -311,7 +311,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 


[10/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
----------------------------------------------------------------------
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
index 4f74984..fa489c5 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
@@ -46,37 +46,37 @@
 <span class="sourceLineNo">038</span>import java.util.Map;<a name="line.38"></a>
 <span class="sourceLineNo">039</span>import java.util.Map.Entry;<a name="line.39"></a>
 <span class="sourceLineNo">040</span>import java.util.Objects;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.Optional;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.Set;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import java.util.concurrent.ExecutionException;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import java.util.concurrent.Future;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import java.util.concurrent.TimeUnit;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import java.util.concurrent.TimeoutException;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import java.util.function.Function;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import java.util.regex.Pattern;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import java.util.stream.Collectors;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import javax.servlet.ServletException;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServlet;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletRequest;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import javax.servlet.http.HttpServletResponse;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.conf.Configuration;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.fs.Path;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.HConstants;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.71"></a>
+<span class="sourceLineNo">041</span>import java.util.Set;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.concurrent.CountDownLatch;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.ExecutionException;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.Future;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import java.util.concurrent.TimeUnit;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import java.util.concurrent.TimeoutException;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import java.util.function.Function;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import java.util.regex.Pattern;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import java.util.stream.Collectors;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import javax.servlet.ServletException;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import javax.servlet.http.HttpServlet;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServletRequest;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletResponse;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.conf.Configuration;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.fs.Path;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HConstants;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.ReplicationPeerNotFoundException;<a name="line.71"></a>
 <span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.ServerLoad;<a name="line.72"></a>
 <span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.ServerMetricsBuilder;<a name="line.73"></a>
 <span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.ServerName;<a name="line.74"></a>
@@ -3350,186 +3350,185 @@
 <span class="sourceLineNo">3342</span>      cpHost.preGetReplicationPeerConfig(peerId);<a name="line.3342"></a>
 <span class="sourceLineNo">3343</span>    }<a name="line.3343"></a>
 <span class="sourceLineNo">3344</span>    LOG.info(getClientIdAuditPrefix() + " get replication peer config, id=" + peerId);<a name="line.3344"></a>
-<span class="sourceLineNo">3345</span>    Optional&lt;ReplicationPeerConfig&gt; peerConfig =<a name="line.3345"></a>
-<span class="sourceLineNo">3346</span>      this.replicationPeerManager.getPeerConfig(peerId);<a name="line.3346"></a>
-<span class="sourceLineNo">3347</span><a name="line.3347"></a>
-<span class="sourceLineNo">3348</span>    if (cpHost != null) {<a name="line.3348"></a>
-<span class="sourceLineNo">3349</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3349"></a>
-<span class="sourceLineNo">3350</span>    }<a name="line.3350"></a>
-<span class="sourceLineNo">3351</span>    return peerConfig.orElse(null);<a name="line.3351"></a>
-<span class="sourceLineNo">3352</span>  }<a name="line.3352"></a>
-<span class="sourceLineNo">3353</span><a name="line.3353"></a>
-<span class="sourceLineNo">3354</span>  @Override<a name="line.3354"></a>
-<span class="sourceLineNo">3355</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3355"></a>
-<span class="sourceLineNo">3356</span>      throws ReplicationException, IOException {<a name="line.3356"></a>
-<span class="sourceLineNo">3357</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3357"></a>
-<span class="sourceLineNo">3358</span>      ", config=" + peerConfig);<a name="line.3358"></a>
-<span class="sourceLineNo">3359</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3359"></a>
-<span class="sourceLineNo">3360</span>  }<a name="line.3360"></a>
-<span class="sourceLineNo">3361</span><a name="line.3361"></a>
-<span class="sourceLineNo">3362</span>  @Override<a name="line.3362"></a>
-<span class="sourceLineNo">3363</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3363"></a>
-<span class="sourceLineNo">3364</span>      throws ReplicationException, IOException {<a name="line.3364"></a>
-<span class="sourceLineNo">3365</span>    if (cpHost != null) {<a name="line.3365"></a>
-<span class="sourceLineNo">3366</span>      cpHost.preListReplicationPeers(regex);<a name="line.3366"></a>
-<span class="sourceLineNo">3367</span>    }<a name="line.3367"></a>
-<span class="sourceLineNo">3368</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3368"></a>
-<span class="sourceLineNo">3369</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3369"></a>
-<span class="sourceLineNo">3370</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3370"></a>
-<span class="sourceLineNo">3371</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3371"></a>
-<span class="sourceLineNo">3372</span>    if (cpHost != null) {<a name="line.3372"></a>
-<span class="sourceLineNo">3373</span>      cpHost.postListReplicationPeers(regex);<a name="line.3373"></a>
-<span class="sourceLineNo">3374</span>    }<a name="line.3374"></a>
-<span class="sourceLineNo">3375</span>    return peers;<a name="line.3375"></a>
-<span class="sourceLineNo">3376</span>  }<a name="line.3376"></a>
-<span class="sourceLineNo">3377</span><a name="line.3377"></a>
-<span class="sourceLineNo">3378</span>  /**<a name="line.3378"></a>
-<span class="sourceLineNo">3379</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3379"></a>
-<span class="sourceLineNo">3380</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3380"></a>
-<span class="sourceLineNo">3381</span>   * @param servers Region servers to decommission.<a name="line.3381"></a>
-<span class="sourceLineNo">3382</span>   * @throws HBaseIOException<a name="line.3382"></a>
-<span class="sourceLineNo">3383</span>   */<a name="line.3383"></a>
-<span class="sourceLineNo">3384</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3384"></a>
-<span class="sourceLineNo">3385</span>      throws HBaseIOException {<a name="line.3385"></a>
-<span class="sourceLineNo">3386</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3386"></a>
-<span class="sourceLineNo">3387</span>    // Place the decommission marker first.<a name="line.3387"></a>
-<span class="sourceLineNo">3388</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3388"></a>
-<span class="sourceLineNo">3389</span>    for (ServerName server : servers) {<a name="line.3389"></a>
-<span class="sourceLineNo">3390</span>      try {<a name="line.3390"></a>
-<span class="sourceLineNo">3391</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3391"></a>
-<span class="sourceLineNo">3392</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3392"></a>
-<span class="sourceLineNo">3393</span>      } catch (KeeperException ke) {<a name="line.3393"></a>
-<span class="sourceLineNo">3394</span>        throw new HBaseIOException(<a name="line.3394"></a>
-<span class="sourceLineNo">3395</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3395"></a>
-<span class="sourceLineNo">3396</span>      }<a name="line.3396"></a>
-<span class="sourceLineNo">3397</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3397"></a>
-<span class="sourceLineNo">3398</span>        serversAdded.add(server);<a name="line.3398"></a>
-<span class="sourceLineNo">3399</span>      }<a name="line.3399"></a>
-<span class="sourceLineNo">3400</span>    }<a name="line.3400"></a>
-<span class="sourceLineNo">3401</span>    // Move the regions off the decommissioned servers.<a name="line.3401"></a>
-<span class="sourceLineNo">3402</span>    if (offload) {<a name="line.3402"></a>
-<span class="sourceLineNo">3403</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3403"></a>
-<span class="sourceLineNo">3404</span>      for (ServerName server : serversAdded) {<a name="line.3404"></a>
-<span class="sourceLineNo">3405</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3405"></a>
-<span class="sourceLineNo">3406</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3406"></a>
-<span class="sourceLineNo">3407</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3407"></a>
-<span class="sourceLineNo">3408</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3408"></a>
-<span class="sourceLineNo">3409</span>          if (dest == null) {<a name="line.3409"></a>
-<span class="sourceLineNo">3410</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3410"></a>
-<span class="sourceLineNo">3411</span>          }<a name="line.3411"></a>
-<span class="sourceLineNo">3412</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3412"></a>
-<span class="sourceLineNo">3413</span>          this.assignmentManager.moveAsync(rp);<a name="line.3413"></a>
-<span class="sourceLineNo">3414</span>        }<a name="line.3414"></a>
-<span class="sourceLineNo">3415</span>      }<a name="line.3415"></a>
-<span class="sourceLineNo">3416</span>    }<a name="line.3416"></a>
-<span class="sourceLineNo">3417</span>  }<a name="line.3417"></a>
-<span class="sourceLineNo">3418</span><a name="line.3418"></a>
-<span class="sourceLineNo">3419</span>  /**<a name="line.3419"></a>
-<span class="sourceLineNo">3420</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3420"></a>
-<span class="sourceLineNo">3421</span>   * assigned to them.<a name="line.3421"></a>
-<span class="sourceLineNo">3422</span>   * @return List of decommissioned servers.<a name="line.3422"></a>
-<span class="sourceLineNo">3423</span>   */<a name="line.3423"></a>
-<span class="sourceLineNo">3424</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3424"></a>
-<span class="sourceLineNo">3425</span>    return this.serverManager.getDrainingServersList();<a name="line.3425"></a>
-<span class="sourceLineNo">3426</span>  }<a name="line.3426"></a>
-<span class="sourceLineNo">3427</span><a name="line.3427"></a>
-<span class="sourceLineNo">3428</span>  /**<a name="line.3428"></a>
-<span class="sourceLineNo">3429</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3429"></a>
-<span class="sourceLineNo">3430</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3430"></a>
-<span class="sourceLineNo">3431</span>   * @param server Region server to remove decommission marker from.<a name="line.3431"></a>
-<span class="sourceLineNo">3432</span>   * @throws HBaseIOException<a name="line.3432"></a>
-<span class="sourceLineNo">3433</span>   */<a name="line.3433"></a>
-<span class="sourceLineNo">3434</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3434"></a>
-<span class="sourceLineNo">3435</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3435"></a>
-<span class="sourceLineNo">3436</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3436"></a>
-<span class="sourceLineNo">3437</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3437"></a>
-<span class="sourceLineNo">3438</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3438"></a>
-<span class="sourceLineNo">3439</span>    try {<a name="line.3439"></a>
-<span class="sourceLineNo">3440</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3440"></a>
-<span class="sourceLineNo">3441</span>    } catch (KeeperException ke) {<a name="line.3441"></a>
-<span class="sourceLineNo">3442</span>      throw new HBaseIOException(<a name="line.3442"></a>
-<span class="sourceLineNo">3443</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3443"></a>
-<span class="sourceLineNo">3444</span>    }<a name="line.3444"></a>
-<span class="sourceLineNo">3445</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3445"></a>
-<span class="sourceLineNo">3446</span><a name="line.3446"></a>
-<span class="sourceLineNo">3447</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3447"></a>
-<span class="sourceLineNo">3448</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3448"></a>
-<span class="sourceLineNo">3449</span>      return;<a name="line.3449"></a>
-<span class="sourceLineNo">3450</span>    }<a name="line.3450"></a>
-<span class="sourceLineNo">3451</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3451"></a>
-<span class="sourceLineNo">3452</span>      return;<a name="line.3452"></a>
-<span class="sourceLineNo">3453</span>    }<a name="line.3453"></a>
-<span class="sourceLineNo">3454</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3454"></a>
-<span class="sourceLineNo">3455</span>      RegionState regionState =<a name="line.3455"></a>
-<span class="sourceLineNo">3456</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3456"></a>
-<span class="sourceLineNo">3457</span>      if (regionState == null) {<a name="line.3457"></a>
-<span class="sourceLineNo">3458</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3458"></a>
-<span class="sourceLineNo">3459</span>        continue;<a name="line.3459"></a>
-<span class="sourceLineNo">3460</span>      }<a name="line.3460"></a>
-<span class="sourceLineNo">3461</span>      RegionInfo hri = regionState.getRegion();<a name="line.3461"></a>
-<span class="sourceLineNo">3462</span>      if (server.equals(regionState.getServerName())) {<a name="line.3462"></a>
-<span class="sourceLineNo">3463</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3463"></a>
-<span class="sourceLineNo">3464</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3464"></a>
-<span class="sourceLineNo">3465</span>        continue;<a name="line.3465"></a>
-<span class="sourceLineNo">3466</span>      }<a name="line.3466"></a>
-<span class="sourceLineNo">3467</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3467"></a>
-<span class="sourceLineNo">3468</span>      this.assignmentManager.moveAsync(rp);<a name="line.3468"></a>
-<span class="sourceLineNo">3469</span>    }<a name="line.3469"></a>
-<span class="sourceLineNo">3470</span>  }<a name="line.3470"></a>
-<span class="sourceLineNo">3471</span><a name="line.3471"></a>
-<span class="sourceLineNo">3472</span>  @Override<a name="line.3472"></a>
-<span class="sourceLineNo">3473</span>  public LockManager getLockManager() {<a name="line.3473"></a>
-<span class="sourceLineNo">3474</span>    return lockManager;<a name="line.3474"></a>
-<span class="sourceLineNo">3475</span>  }<a name="line.3475"></a>
-<span class="sourceLineNo">3476</span><a name="line.3476"></a>
-<span class="sourceLineNo">3477</span>  @Override<a name="line.3477"></a>
-<span class="sourceLineNo">3478</span>  public boolean recoverMeta() throws IOException {<a name="line.3478"></a>
-<span class="sourceLineNo">3479</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3479"></a>
-<span class="sourceLineNo">3480</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3480"></a>
-<span class="sourceLineNo">3481</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3481"></a>
-<span class="sourceLineNo">3482</span>    latch.await();<a name="line.3482"></a>
-<span class="sourceLineNo">3483</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3483"></a>
-<span class="sourceLineNo">3484</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3484"></a>
-<span class="sourceLineNo">3485</span>    return assignmentManager.isMetaInitialized();<a name="line.3485"></a>
-<span class="sourceLineNo">3486</span>  }<a name="line.3486"></a>
-<span class="sourceLineNo">3487</span><a name="line.3487"></a>
-<span class="sourceLineNo">3488</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3488"></a>
-<span class="sourceLineNo">3489</span>    return this.quotaObserverChore;<a name="line.3489"></a>
-<span class="sourceLineNo">3490</span>  }<a name="line.3490"></a>
-<span class="sourceLineNo">3491</span><a name="line.3491"></a>
-<span class="sourceLineNo">3492</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3492"></a>
-<span class="sourceLineNo">3493</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3493"></a>
-<span class="sourceLineNo">3494</span>  }<a name="line.3494"></a>
-<span class="sourceLineNo">3495</span><a name="line.3495"></a>
-<span class="sourceLineNo">3496</span>  @SuppressWarnings("unchecked")<a name="line.3496"></a>
-<span class="sourceLineNo">3497</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3497"></a>
-<span class="sourceLineNo">3498</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3498"></a>
-<span class="sourceLineNo">3499</span>    if (procedure == null) {<a name="line.3499"></a>
-<span class="sourceLineNo">3500</span>      return null;<a name="line.3500"></a>
-<span class="sourceLineNo">3501</span>    }<a name="line.3501"></a>
-<span class="sourceLineNo">3502</span>    assert procedure instanceof RemoteProcedure;<a name="line.3502"></a>
-<span class="sourceLineNo">3503</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3503"></a>
-<span class="sourceLineNo">3504</span>  }<a name="line.3504"></a>
-<span class="sourceLineNo">3505</span><a name="line.3505"></a>
-<span class="sourceLineNo">3506</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3506"></a>
-<span class="sourceLineNo">3507</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3507"></a>
-<span class="sourceLineNo">3508</span>    if (procedure != null) {<a name="line.3508"></a>
-<span class="sourceLineNo">3509</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3509"></a>
-<span class="sourceLineNo">3510</span>    }<a name="line.3510"></a>
-<span class="sourceLineNo">3511</span>  }<a name="line.3511"></a>
-<span class="sourceLineNo">3512</span><a name="line.3512"></a>
-<span class="sourceLineNo">3513</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3513"></a>
-<span class="sourceLineNo">3514</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3514"></a>
-<span class="sourceLineNo">3515</span>    if (procedure != null) {<a name="line.3515"></a>
-<span class="sourceLineNo">3516</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3516"></a>
-<span class="sourceLineNo">3517</span>    }<a name="line.3517"></a>
-<span class="sourceLineNo">3518</span>  }<a name="line.3518"></a>
-<span class="sourceLineNo">3519</span><a name="line.3519"></a>
-<span class="sourceLineNo">3520</span>  @Override<a name="line.3520"></a>
-<span class="sourceLineNo">3521</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3521"></a>
-<span class="sourceLineNo">3522</span>    return replicationPeerManager;<a name="line.3522"></a>
-<span class="sourceLineNo">3523</span>  }<a name="line.3523"></a>
-<span class="sourceLineNo">3524</span>}<a name="line.3524"></a>
+<span class="sourceLineNo">3345</span>    ReplicationPeerConfig peerConfig = this.replicationPeerManager.getPeerConfig(peerId)<a name="line.3345"></a>
+<span class="sourceLineNo">3346</span>        .orElseThrow(() -&gt; new ReplicationPeerNotFoundException(peerId));<a name="line.3346"></a>
+<span class="sourceLineNo">3347</span>    if (cpHost != null) {<a name="line.3347"></a>
+<span class="sourceLineNo">3348</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3348"></a>
+<span class="sourceLineNo">3349</span>    }<a name="line.3349"></a>
+<span class="sourceLineNo">3350</span>    return peerConfig;<a name="line.3350"></a>
+<span class="sourceLineNo">3351</span>  }<a name="line.3351"></a>
+<span class="sourceLineNo">3352</span><a name="line.3352"></a>
+<span class="sourceLineNo">3353</span>  @Override<a name="line.3353"></a>
+<span class="sourceLineNo">3354</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3354"></a>
+<span class="sourceLineNo">3355</span>      throws ReplicationException, IOException {<a name="line.3355"></a>
+<span class="sourceLineNo">3356</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3356"></a>
+<span class="sourceLineNo">3357</span>      ", config=" + peerConfig);<a name="line.3357"></a>
+<span class="sourceLineNo">3358</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3358"></a>
+<span class="sourceLineNo">3359</span>  }<a name="line.3359"></a>
+<span class="sourceLineNo">3360</span><a name="line.3360"></a>
+<span class="sourceLineNo">3361</span>  @Override<a name="line.3361"></a>
+<span class="sourceLineNo">3362</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3362"></a>
+<span class="sourceLineNo">3363</span>      throws ReplicationException, IOException {<a name="line.3363"></a>
+<span class="sourceLineNo">3364</span>    if (cpHost != null) {<a name="line.3364"></a>
+<span class="sourceLineNo">3365</span>      cpHost.preListReplicationPeers(regex);<a name="line.3365"></a>
+<span class="sourceLineNo">3366</span>    }<a name="line.3366"></a>
+<span class="sourceLineNo">3367</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3367"></a>
+<span class="sourceLineNo">3368</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3368"></a>
+<span class="sourceLineNo">3369</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3369"></a>
+<span class="sourceLineNo">3370</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3370"></a>
+<span class="sourceLineNo">3371</span>    if (cpHost != null) {<a name="line.3371"></a>
+<span class="sourceLineNo">3372</span>      cpHost.postListReplicationPeers(regex);<a name="line.3372"></a>
+<span class="sourceLineNo">3373</span>    }<a name="line.3373"></a>
+<span class="sourceLineNo">3374</span>    return peers;<a name="line.3374"></a>
+<span class="sourceLineNo">3375</span>  }<a name="line.3375"></a>
+<span class="sourceLineNo">3376</span><a name="line.3376"></a>
+<span class="sourceLineNo">3377</span>  /**<a name="line.3377"></a>
+<span class="sourceLineNo">3378</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3378"></a>
+<span class="sourceLineNo">3379</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3379"></a>
+<span class="sourceLineNo">3380</span>   * @param servers Region servers to decommission.<a name="line.3380"></a>
+<span class="sourceLineNo">3381</span>   * @throws HBaseIOException<a name="line.3381"></a>
+<span class="sourceLineNo">3382</span>   */<a name="line.3382"></a>
+<span class="sourceLineNo">3383</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3383"></a>
+<span class="sourceLineNo">3384</span>      throws HBaseIOException {<a name="line.3384"></a>
+<span class="sourceLineNo">3385</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3385"></a>
+<span class="sourceLineNo">3386</span>    // Place the decommission marker first.<a name="line.3386"></a>
+<span class="sourceLineNo">3387</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3387"></a>
+<span class="sourceLineNo">3388</span>    for (ServerName server : servers) {<a name="line.3388"></a>
+<span class="sourceLineNo">3389</span>      try {<a name="line.3389"></a>
+<span class="sourceLineNo">3390</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3390"></a>
+<span class="sourceLineNo">3391</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3391"></a>
+<span class="sourceLineNo">3392</span>      } catch (KeeperException ke) {<a name="line.3392"></a>
+<span class="sourceLineNo">3393</span>        throw new HBaseIOException(<a name="line.3393"></a>
+<span class="sourceLineNo">3394</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3394"></a>
+<span class="sourceLineNo">3395</span>      }<a name="line.3395"></a>
+<span class="sourceLineNo">3396</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3396"></a>
+<span class="sourceLineNo">3397</span>        serversAdded.add(server);<a name="line.3397"></a>
+<span class="sourceLineNo">3398</span>      }<a name="line.3398"></a>
+<span class="sourceLineNo">3399</span>    }<a name="line.3399"></a>
+<span class="sourceLineNo">3400</span>    // Move the regions off the decommissioned servers.<a name="line.3400"></a>
+<span class="sourceLineNo">3401</span>    if (offload) {<a name="line.3401"></a>
+<span class="sourceLineNo">3402</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3402"></a>
+<span class="sourceLineNo">3403</span>      for (ServerName server : serversAdded) {<a name="line.3403"></a>
+<span class="sourceLineNo">3404</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3404"></a>
+<span class="sourceLineNo">3405</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3405"></a>
+<span class="sourceLineNo">3406</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3406"></a>
+<span class="sourceLineNo">3407</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3407"></a>
+<span class="sourceLineNo">3408</span>          if (dest == null) {<a name="line.3408"></a>
+<span class="sourceLineNo">3409</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3409"></a>
+<span class="sourceLineNo">3410</span>          }<a name="line.3410"></a>
+<span class="sourceLineNo">3411</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3411"></a>
+<span class="sourceLineNo">3412</span>          this.assignmentManager.moveAsync(rp);<a name="line.3412"></a>
+<span class="sourceLineNo">3413</span>        }<a name="line.3413"></a>
+<span class="sourceLineNo">3414</span>      }<a name="line.3414"></a>
+<span class="sourceLineNo">3415</span>    }<a name="line.3415"></a>
+<span class="sourceLineNo">3416</span>  }<a name="line.3416"></a>
+<span class="sourceLineNo">3417</span><a name="line.3417"></a>
+<span class="sourceLineNo">3418</span>  /**<a name="line.3418"></a>
+<span class="sourceLineNo">3419</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3419"></a>
+<span class="sourceLineNo">3420</span>   * assigned to them.<a name="line.3420"></a>
+<span class="sourceLineNo">3421</span>   * @return List of decommissioned servers.<a name="line.3421"></a>
+<span class="sourceLineNo">3422</span>   */<a name="line.3422"></a>
+<span class="sourceLineNo">3423</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3423"></a>
+<span class="sourceLineNo">3424</span>    return this.serverManager.getDrainingServersList();<a name="line.3424"></a>
+<span class="sourceLineNo">3425</span>  }<a name="line.3425"></a>
+<span class="sourceLineNo">3426</span><a name="line.3426"></a>
+<span class="sourceLineNo">3427</span>  /**<a name="line.3427"></a>
+<span class="sourceLineNo">3428</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3428"></a>
+<span class="sourceLineNo">3429</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3429"></a>
+<span class="sourceLineNo">3430</span>   * @param server Region server to remove decommission marker from.<a name="line.3430"></a>
+<span class="sourceLineNo">3431</span>   * @throws HBaseIOException<a name="line.3431"></a>
+<span class="sourceLineNo">3432</span>   */<a name="line.3432"></a>
+<span class="sourceLineNo">3433</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3433"></a>
+<span class="sourceLineNo">3434</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3434"></a>
+<span class="sourceLineNo">3435</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3435"></a>
+<span class="sourceLineNo">3436</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3436"></a>
+<span class="sourceLineNo">3437</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3437"></a>
+<span class="sourceLineNo">3438</span>    try {<a name="line.3438"></a>
+<span class="sourceLineNo">3439</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3439"></a>
+<span class="sourceLineNo">3440</span>    } catch (KeeperException ke) {<a name="line.3440"></a>
+<span class="sourceLineNo">3441</span>      throw new HBaseIOException(<a name="line.3441"></a>
+<span class="sourceLineNo">3442</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3442"></a>
+<span class="sourceLineNo">3443</span>    }<a name="line.3443"></a>
+<span class="sourceLineNo">3444</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3444"></a>
+<span class="sourceLineNo">3445</span><a name="line.3445"></a>
+<span class="sourceLineNo">3446</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3446"></a>
+<span class="sourceLineNo">3447</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3447"></a>
+<span class="sourceLineNo">3448</span>      return;<a name="line.3448"></a>
+<span class="sourceLineNo">3449</span>    }<a name="line.3449"></a>
+<span class="sourceLineNo">3450</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3450"></a>
+<span class="sourceLineNo">3451</span>      return;<a name="line.3451"></a>
+<span class="sourceLineNo">3452</span>    }<a name="line.3452"></a>
+<span class="sourceLineNo">3453</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3453"></a>
+<span class="sourceLineNo">3454</span>      RegionState regionState =<a name="line.3454"></a>
+<span class="sourceLineNo">3455</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3455"></a>
+<span class="sourceLineNo">3456</span>      if (regionState == null) {<a name="line.3456"></a>
+<span class="sourceLineNo">3457</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3457"></a>
+<span class="sourceLineNo">3458</span>        continue;<a name="line.3458"></a>
+<span class="sourceLineNo">3459</span>      }<a name="line.3459"></a>
+<span class="sourceLineNo">3460</span>      RegionInfo hri = regionState.getRegion();<a name="line.3460"></a>
+<span class="sourceLineNo">3461</span>      if (server.equals(regionState.getServerName())) {<a name="line.3461"></a>
+<span class="sourceLineNo">3462</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3462"></a>
+<span class="sourceLineNo">3463</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3463"></a>
+<span class="sourceLineNo">3464</span>        continue;<a name="line.3464"></a>
+<span class="sourceLineNo">3465</span>      }<a name="line.3465"></a>
+<span class="sourceLineNo">3466</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3466"></a>
+<span class="sourceLineNo">3467</span>      this.assignmentManager.moveAsync(rp);<a name="line.3467"></a>
+<span class="sourceLineNo">3468</span>    }<a name="line.3468"></a>
+<span class="sourceLineNo">3469</span>  }<a name="line.3469"></a>
+<span class="sourceLineNo">3470</span><a name="line.3470"></a>
+<span class="sourceLineNo">3471</span>  @Override<a name="line.3471"></a>
+<span class="sourceLineNo">3472</span>  public LockManager getLockManager() {<a name="line.3472"></a>
+<span class="sourceLineNo">3473</span>    return lockManager;<a name="line.3473"></a>
+<span class="sourceLineNo">3474</span>  }<a name="line.3474"></a>
+<span class="sourceLineNo">3475</span><a name="line.3475"></a>
+<span class="sourceLineNo">3476</span>  @Override<a name="line.3476"></a>
+<span class="sourceLineNo">3477</span>  public boolean recoverMeta() throws IOException {<a name="line.3477"></a>
+<span class="sourceLineNo">3478</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3478"></a>
+<span class="sourceLineNo">3479</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3479"></a>
+<span class="sourceLineNo">3480</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3480"></a>
+<span class="sourceLineNo">3481</span>    latch.await();<a name="line.3481"></a>
+<span class="sourceLineNo">3482</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3482"></a>
+<span class="sourceLineNo">3483</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3483"></a>
+<span class="sourceLineNo">3484</span>    return assignmentManager.isMetaInitialized();<a name="line.3484"></a>
+<span class="sourceLineNo">3485</span>  }<a name="line.3485"></a>
+<span class="sourceLineNo">3486</span><a name="line.3486"></a>
+<span class="sourceLineNo">3487</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3487"></a>
+<span class="sourceLineNo">3488</span>    return this.quotaObserverChore;<a name="line.3488"></a>
+<span class="sourceLineNo">3489</span>  }<a name="line.3489"></a>
+<span class="sourceLineNo">3490</span><a name="line.3490"></a>
+<span class="sourceLineNo">3491</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3491"></a>
+<span class="sourceLineNo">3492</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3492"></a>
+<span class="sourceLineNo">3493</span>  }<a name="line.3493"></a>
+<span class="sourceLineNo">3494</span><a name="line.3494"></a>
+<span class="sourceLineNo">3495</span>  @SuppressWarnings("unchecked")<a name="line.3495"></a>
+<span class="sourceLineNo">3496</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3496"></a>
+<span class="sourceLineNo">3497</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3497"></a>
+<span class="sourceLineNo">3498</span>    if (procedure == null) {<a name="line.3498"></a>
+<span class="sourceLineNo">3499</span>      return null;<a name="line.3499"></a>
+<span class="sourceLineNo">3500</span>    }<a name="line.3500"></a>
+<span class="sourceLineNo">3501</span>    assert procedure instanceof RemoteProcedure;<a name="line.3501"></a>
+<span class="sourceLineNo">3502</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3502"></a>
+<span class="sourceLineNo">3503</span>  }<a name="line.3503"></a>
+<span class="sourceLineNo">3504</span><a name="line.3504"></a>
+<span class="sourceLineNo">3505</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3505"></a>
+<span class="sourceLineNo">3506</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3506"></a>
+<span class="sourceLineNo">3507</span>    if (procedure != null) {<a name="line.3507"></a>
+<span class="sourceLineNo">3508</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3508"></a>
+<span class="sourceLineNo">3509</span>    }<a name="line.3509"></a>
+<span class="sourceLineNo">3510</span>  }<a name="line.3510"></a>
+<span class="sourceLineNo">3511</span><a name="line.3511"></a>
+<span class="sourceLineNo">3512</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3512"></a>
+<span class="sourceLineNo">3513</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3513"></a>
+<span class="sourceLineNo">3514</span>    if (procedure != null) {<a name="line.3514"></a>
+<span class="sourceLineNo">3515</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3515"></a>
+<span class="sourceLineNo">3516</span>    }<a name="line.3516"></a>
+<span class="sourceLineNo">3517</span>  }<a name="line.3517"></a>
+<span class="sourceLineNo">3518</span><a name="line.3518"></a>
+<span class="sourceLineNo">3519</span>  @Override<a name="line.3519"></a>
+<span class="sourceLineNo">3520</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3520"></a>
+<span class="sourceLineNo">3521</span>    return replicationPeerManager;<a name="line.3521"></a>
+<span class="sourceLineNo">3522</span>  }<a name="line.3522"></a>
+<span class="sourceLineNo">3523</span>}<a name="line.3523"></a>
 
 
 


[12/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
----------------------------------------------------------------------
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
index 4f74984..fa489c5 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
@@ -46,37 +46,37 @@
 <span class="sourceLineNo">038</span>import java.util.Map;<a name="line.38"></a>
 <span class="sourceLineNo">039</span>import java.util.Map.Entry;<a name="line.39"></a>
 <span class="sourceLineNo">040</span>import java.util.Objects;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import java.util.Optional;<a name="line.41"></a>
-<span class="sourceLineNo">042</span>import java.util.Set;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>import java.util.concurrent.CountDownLatch;<a name="line.43"></a>
-<span class="sourceLineNo">044</span>import java.util.concurrent.ExecutionException;<a name="line.44"></a>
-<span class="sourceLineNo">045</span>import java.util.concurrent.Future;<a name="line.45"></a>
-<span class="sourceLineNo">046</span>import java.util.concurrent.TimeUnit;<a name="line.46"></a>
-<span class="sourceLineNo">047</span>import java.util.concurrent.TimeoutException;<a name="line.47"></a>
-<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.48"></a>
-<span class="sourceLineNo">049</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>import java.util.function.Function;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>import java.util.regex.Pattern;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>import java.util.stream.Collectors;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>import javax.servlet.ServletException;<a name="line.53"></a>
-<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServlet;<a name="line.54"></a>
-<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletRequest;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>import javax.servlet.http.HttpServletResponse;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>import org.apache.hadoop.conf.Configuration;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>import org.apache.hadoop.fs.Path;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.HConstants;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.71"></a>
+<span class="sourceLineNo">041</span>import java.util.Set;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import java.util.concurrent.CountDownLatch;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>import java.util.concurrent.ExecutionException;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>import java.util.concurrent.Future;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>import java.util.concurrent.TimeUnit;<a name="line.45"></a>
+<span class="sourceLineNo">046</span>import java.util.concurrent.TimeoutException;<a name="line.46"></a>
+<span class="sourceLineNo">047</span>import java.util.concurrent.atomic.AtomicInteger;<a name="line.47"></a>
+<span class="sourceLineNo">048</span>import java.util.concurrent.atomic.AtomicReference;<a name="line.48"></a>
+<span class="sourceLineNo">049</span>import java.util.function.Function;<a name="line.49"></a>
+<span class="sourceLineNo">050</span>import java.util.regex.Pattern;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>import java.util.stream.Collectors;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>import javax.servlet.ServletException;<a name="line.52"></a>
+<span class="sourceLineNo">053</span>import javax.servlet.http.HttpServlet;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>import javax.servlet.http.HttpServletRequest;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>import javax.servlet.http.HttpServletResponse;<a name="line.55"></a>
+<span class="sourceLineNo">056</span>import org.apache.hadoop.conf.Configuration;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>import org.apache.hadoop.fs.Path;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>import org.apache.hadoop.hbase.ClusterMetrics;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>import org.apache.hadoop.hbase.ClusterMetrics.Option;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>import org.apache.hadoop.hbase.ClusterMetricsBuilder;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>import org.apache.hadoop.hbase.CoordinatedStateException;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>import org.apache.hadoop.hbase.DoNotRetryIOException;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.HBaseIOException;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.HBaseInterfaceAudience;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.HConstants;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>import org.apache.hadoop.hbase.InvalidFamilyOperationException;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hadoop.hbase.MasterNotRunningException;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hadoop.hbase.MetaTableAccessor;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.NamespaceDescriptor;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.PleaseHoldException;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.ReplicationPeerNotFoundException;<a name="line.71"></a>
 <span class="sourceLineNo">072</span>import org.apache.hadoop.hbase.ServerLoad;<a name="line.72"></a>
 <span class="sourceLineNo">073</span>import org.apache.hadoop.hbase.ServerMetricsBuilder;<a name="line.73"></a>
 <span class="sourceLineNo">074</span>import org.apache.hadoop.hbase.ServerName;<a name="line.74"></a>
@@ -3350,186 +3350,185 @@
 <span class="sourceLineNo">3342</span>      cpHost.preGetReplicationPeerConfig(peerId);<a name="line.3342"></a>
 <span class="sourceLineNo">3343</span>    }<a name="line.3343"></a>
 <span class="sourceLineNo">3344</span>    LOG.info(getClientIdAuditPrefix() + " get replication peer config, id=" + peerId);<a name="line.3344"></a>
-<span class="sourceLineNo">3345</span>    Optional&lt;ReplicationPeerConfig&gt; peerConfig =<a name="line.3345"></a>
-<span class="sourceLineNo">3346</span>      this.replicationPeerManager.getPeerConfig(peerId);<a name="line.3346"></a>
-<span class="sourceLineNo">3347</span><a name="line.3347"></a>
-<span class="sourceLineNo">3348</span>    if (cpHost != null) {<a name="line.3348"></a>
-<span class="sourceLineNo">3349</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3349"></a>
-<span class="sourceLineNo">3350</span>    }<a name="line.3350"></a>
-<span class="sourceLineNo">3351</span>    return peerConfig.orElse(null);<a name="line.3351"></a>
-<span class="sourceLineNo">3352</span>  }<a name="line.3352"></a>
-<span class="sourceLineNo">3353</span><a name="line.3353"></a>
-<span class="sourceLineNo">3354</span>  @Override<a name="line.3354"></a>
-<span class="sourceLineNo">3355</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3355"></a>
-<span class="sourceLineNo">3356</span>      throws ReplicationException, IOException {<a name="line.3356"></a>
-<span class="sourceLineNo">3357</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3357"></a>
-<span class="sourceLineNo">3358</span>      ", config=" + peerConfig);<a name="line.3358"></a>
-<span class="sourceLineNo">3359</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3359"></a>
-<span class="sourceLineNo">3360</span>  }<a name="line.3360"></a>
-<span class="sourceLineNo">3361</span><a name="line.3361"></a>
-<span class="sourceLineNo">3362</span>  @Override<a name="line.3362"></a>
-<span class="sourceLineNo">3363</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3363"></a>
-<span class="sourceLineNo">3364</span>      throws ReplicationException, IOException {<a name="line.3364"></a>
-<span class="sourceLineNo">3365</span>    if (cpHost != null) {<a name="line.3365"></a>
-<span class="sourceLineNo">3366</span>      cpHost.preListReplicationPeers(regex);<a name="line.3366"></a>
-<span class="sourceLineNo">3367</span>    }<a name="line.3367"></a>
-<span class="sourceLineNo">3368</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3368"></a>
-<span class="sourceLineNo">3369</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3369"></a>
-<span class="sourceLineNo">3370</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3370"></a>
-<span class="sourceLineNo">3371</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3371"></a>
-<span class="sourceLineNo">3372</span>    if (cpHost != null) {<a name="line.3372"></a>
-<span class="sourceLineNo">3373</span>      cpHost.postListReplicationPeers(regex);<a name="line.3373"></a>
-<span class="sourceLineNo">3374</span>    }<a name="line.3374"></a>
-<span class="sourceLineNo">3375</span>    return peers;<a name="line.3375"></a>
-<span class="sourceLineNo">3376</span>  }<a name="line.3376"></a>
-<span class="sourceLineNo">3377</span><a name="line.3377"></a>
-<span class="sourceLineNo">3378</span>  /**<a name="line.3378"></a>
-<span class="sourceLineNo">3379</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3379"></a>
-<span class="sourceLineNo">3380</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3380"></a>
-<span class="sourceLineNo">3381</span>   * @param servers Region servers to decommission.<a name="line.3381"></a>
-<span class="sourceLineNo">3382</span>   * @throws HBaseIOException<a name="line.3382"></a>
-<span class="sourceLineNo">3383</span>   */<a name="line.3383"></a>
-<span class="sourceLineNo">3384</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3384"></a>
-<span class="sourceLineNo">3385</span>      throws HBaseIOException {<a name="line.3385"></a>
-<span class="sourceLineNo">3386</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3386"></a>
-<span class="sourceLineNo">3387</span>    // Place the decommission marker first.<a name="line.3387"></a>
-<span class="sourceLineNo">3388</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3388"></a>
-<span class="sourceLineNo">3389</span>    for (ServerName server : servers) {<a name="line.3389"></a>
-<span class="sourceLineNo">3390</span>      try {<a name="line.3390"></a>
-<span class="sourceLineNo">3391</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3391"></a>
-<span class="sourceLineNo">3392</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3392"></a>
-<span class="sourceLineNo">3393</span>      } catch (KeeperException ke) {<a name="line.3393"></a>
-<span class="sourceLineNo">3394</span>        throw new HBaseIOException(<a name="line.3394"></a>
-<span class="sourceLineNo">3395</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3395"></a>
-<span class="sourceLineNo">3396</span>      }<a name="line.3396"></a>
-<span class="sourceLineNo">3397</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3397"></a>
-<span class="sourceLineNo">3398</span>        serversAdded.add(server);<a name="line.3398"></a>
-<span class="sourceLineNo">3399</span>      }<a name="line.3399"></a>
-<span class="sourceLineNo">3400</span>    }<a name="line.3400"></a>
-<span class="sourceLineNo">3401</span>    // Move the regions off the decommissioned servers.<a name="line.3401"></a>
-<span class="sourceLineNo">3402</span>    if (offload) {<a name="line.3402"></a>
-<span class="sourceLineNo">3403</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3403"></a>
-<span class="sourceLineNo">3404</span>      for (ServerName server : serversAdded) {<a name="line.3404"></a>
-<span class="sourceLineNo">3405</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3405"></a>
-<span class="sourceLineNo">3406</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3406"></a>
-<span class="sourceLineNo">3407</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3407"></a>
-<span class="sourceLineNo">3408</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3408"></a>
-<span class="sourceLineNo">3409</span>          if (dest == null) {<a name="line.3409"></a>
-<span class="sourceLineNo">3410</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3410"></a>
-<span class="sourceLineNo">3411</span>          }<a name="line.3411"></a>
-<span class="sourceLineNo">3412</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3412"></a>
-<span class="sourceLineNo">3413</span>          this.assignmentManager.moveAsync(rp);<a name="line.3413"></a>
-<span class="sourceLineNo">3414</span>        }<a name="line.3414"></a>
-<span class="sourceLineNo">3415</span>      }<a name="line.3415"></a>
-<span class="sourceLineNo">3416</span>    }<a name="line.3416"></a>
-<span class="sourceLineNo">3417</span>  }<a name="line.3417"></a>
-<span class="sourceLineNo">3418</span><a name="line.3418"></a>
-<span class="sourceLineNo">3419</span>  /**<a name="line.3419"></a>
-<span class="sourceLineNo">3420</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3420"></a>
-<span class="sourceLineNo">3421</span>   * assigned to them.<a name="line.3421"></a>
-<span class="sourceLineNo">3422</span>   * @return List of decommissioned servers.<a name="line.3422"></a>
-<span class="sourceLineNo">3423</span>   */<a name="line.3423"></a>
-<span class="sourceLineNo">3424</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3424"></a>
-<span class="sourceLineNo">3425</span>    return this.serverManager.getDrainingServersList();<a name="line.3425"></a>
-<span class="sourceLineNo">3426</span>  }<a name="line.3426"></a>
-<span class="sourceLineNo">3427</span><a name="line.3427"></a>
-<span class="sourceLineNo">3428</span>  /**<a name="line.3428"></a>
-<span class="sourceLineNo">3429</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3429"></a>
-<span class="sourceLineNo">3430</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3430"></a>
-<span class="sourceLineNo">3431</span>   * @param server Region server to remove decommission marker from.<a name="line.3431"></a>
-<span class="sourceLineNo">3432</span>   * @throws HBaseIOException<a name="line.3432"></a>
-<span class="sourceLineNo">3433</span>   */<a name="line.3433"></a>
-<span class="sourceLineNo">3434</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3434"></a>
-<span class="sourceLineNo">3435</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3435"></a>
-<span class="sourceLineNo">3436</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3436"></a>
-<span class="sourceLineNo">3437</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3437"></a>
-<span class="sourceLineNo">3438</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3438"></a>
-<span class="sourceLineNo">3439</span>    try {<a name="line.3439"></a>
-<span class="sourceLineNo">3440</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3440"></a>
-<span class="sourceLineNo">3441</span>    } catch (KeeperException ke) {<a name="line.3441"></a>
-<span class="sourceLineNo">3442</span>      throw new HBaseIOException(<a name="line.3442"></a>
-<span class="sourceLineNo">3443</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3443"></a>
-<span class="sourceLineNo">3444</span>    }<a name="line.3444"></a>
-<span class="sourceLineNo">3445</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3445"></a>
-<span class="sourceLineNo">3446</span><a name="line.3446"></a>
-<span class="sourceLineNo">3447</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3447"></a>
-<span class="sourceLineNo">3448</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3448"></a>
-<span class="sourceLineNo">3449</span>      return;<a name="line.3449"></a>
-<span class="sourceLineNo">3450</span>    }<a name="line.3450"></a>
-<span class="sourceLineNo">3451</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3451"></a>
-<span class="sourceLineNo">3452</span>      return;<a name="line.3452"></a>
-<span class="sourceLineNo">3453</span>    }<a name="line.3453"></a>
-<span class="sourceLineNo">3454</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3454"></a>
-<span class="sourceLineNo">3455</span>      RegionState regionState =<a name="line.3455"></a>
-<span class="sourceLineNo">3456</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3456"></a>
-<span class="sourceLineNo">3457</span>      if (regionState == null) {<a name="line.3457"></a>
-<span class="sourceLineNo">3458</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3458"></a>
-<span class="sourceLineNo">3459</span>        continue;<a name="line.3459"></a>
-<span class="sourceLineNo">3460</span>      }<a name="line.3460"></a>
-<span class="sourceLineNo">3461</span>      RegionInfo hri = regionState.getRegion();<a name="line.3461"></a>
-<span class="sourceLineNo">3462</span>      if (server.equals(regionState.getServerName())) {<a name="line.3462"></a>
-<span class="sourceLineNo">3463</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3463"></a>
-<span class="sourceLineNo">3464</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3464"></a>
-<span class="sourceLineNo">3465</span>        continue;<a name="line.3465"></a>
-<span class="sourceLineNo">3466</span>      }<a name="line.3466"></a>
-<span class="sourceLineNo">3467</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3467"></a>
-<span class="sourceLineNo">3468</span>      this.assignmentManager.moveAsync(rp);<a name="line.3468"></a>
-<span class="sourceLineNo">3469</span>    }<a name="line.3469"></a>
-<span class="sourceLineNo">3470</span>  }<a name="line.3470"></a>
-<span class="sourceLineNo">3471</span><a name="line.3471"></a>
-<span class="sourceLineNo">3472</span>  @Override<a name="line.3472"></a>
-<span class="sourceLineNo">3473</span>  public LockManager getLockManager() {<a name="line.3473"></a>
-<span class="sourceLineNo">3474</span>    return lockManager;<a name="line.3474"></a>
-<span class="sourceLineNo">3475</span>  }<a name="line.3475"></a>
-<span class="sourceLineNo">3476</span><a name="line.3476"></a>
-<span class="sourceLineNo">3477</span>  @Override<a name="line.3477"></a>
-<span class="sourceLineNo">3478</span>  public boolean recoverMeta() throws IOException {<a name="line.3478"></a>
-<span class="sourceLineNo">3479</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3479"></a>
-<span class="sourceLineNo">3480</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3480"></a>
-<span class="sourceLineNo">3481</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3481"></a>
-<span class="sourceLineNo">3482</span>    latch.await();<a name="line.3482"></a>
-<span class="sourceLineNo">3483</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3483"></a>
-<span class="sourceLineNo">3484</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3484"></a>
-<span class="sourceLineNo">3485</span>    return assignmentManager.isMetaInitialized();<a name="line.3485"></a>
-<span class="sourceLineNo">3486</span>  }<a name="line.3486"></a>
-<span class="sourceLineNo">3487</span><a name="line.3487"></a>
-<span class="sourceLineNo">3488</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3488"></a>
-<span class="sourceLineNo">3489</span>    return this.quotaObserverChore;<a name="line.3489"></a>
-<span class="sourceLineNo">3490</span>  }<a name="line.3490"></a>
-<span class="sourceLineNo">3491</span><a name="line.3491"></a>
-<span class="sourceLineNo">3492</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3492"></a>
-<span class="sourceLineNo">3493</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3493"></a>
-<span class="sourceLineNo">3494</span>  }<a name="line.3494"></a>
-<span class="sourceLineNo">3495</span><a name="line.3495"></a>
-<span class="sourceLineNo">3496</span>  @SuppressWarnings("unchecked")<a name="line.3496"></a>
-<span class="sourceLineNo">3497</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3497"></a>
-<span class="sourceLineNo">3498</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3498"></a>
-<span class="sourceLineNo">3499</span>    if (procedure == null) {<a name="line.3499"></a>
-<span class="sourceLineNo">3500</span>      return null;<a name="line.3500"></a>
-<span class="sourceLineNo">3501</span>    }<a name="line.3501"></a>
-<span class="sourceLineNo">3502</span>    assert procedure instanceof RemoteProcedure;<a name="line.3502"></a>
-<span class="sourceLineNo">3503</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3503"></a>
-<span class="sourceLineNo">3504</span>  }<a name="line.3504"></a>
-<span class="sourceLineNo">3505</span><a name="line.3505"></a>
-<span class="sourceLineNo">3506</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3506"></a>
-<span class="sourceLineNo">3507</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3507"></a>
-<span class="sourceLineNo">3508</span>    if (procedure != null) {<a name="line.3508"></a>
-<span class="sourceLineNo">3509</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3509"></a>
-<span class="sourceLineNo">3510</span>    }<a name="line.3510"></a>
-<span class="sourceLineNo">3511</span>  }<a name="line.3511"></a>
-<span class="sourceLineNo">3512</span><a name="line.3512"></a>
-<span class="sourceLineNo">3513</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3513"></a>
-<span class="sourceLineNo">3514</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3514"></a>
-<span class="sourceLineNo">3515</span>    if (procedure != null) {<a name="line.3515"></a>
-<span class="sourceLineNo">3516</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3516"></a>
-<span class="sourceLineNo">3517</span>    }<a name="line.3517"></a>
-<span class="sourceLineNo">3518</span>  }<a name="line.3518"></a>
-<span class="sourceLineNo">3519</span><a name="line.3519"></a>
-<span class="sourceLineNo">3520</span>  @Override<a name="line.3520"></a>
-<span class="sourceLineNo">3521</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3521"></a>
-<span class="sourceLineNo">3522</span>    return replicationPeerManager;<a name="line.3522"></a>
-<span class="sourceLineNo">3523</span>  }<a name="line.3523"></a>
-<span class="sourceLineNo">3524</span>}<a name="line.3524"></a>
+<span class="sourceLineNo">3345</span>    ReplicationPeerConfig peerConfig = this.replicationPeerManager.getPeerConfig(peerId)<a name="line.3345"></a>
+<span class="sourceLineNo">3346</span>        .orElseThrow(() -&gt; new ReplicationPeerNotFoundException(peerId));<a name="line.3346"></a>
+<span class="sourceLineNo">3347</span>    if (cpHost != null) {<a name="line.3347"></a>
+<span class="sourceLineNo">3348</span>      cpHost.postGetReplicationPeerConfig(peerId);<a name="line.3348"></a>
+<span class="sourceLineNo">3349</span>    }<a name="line.3349"></a>
+<span class="sourceLineNo">3350</span>    return peerConfig;<a name="line.3350"></a>
+<span class="sourceLineNo">3351</span>  }<a name="line.3351"></a>
+<span class="sourceLineNo">3352</span><a name="line.3352"></a>
+<span class="sourceLineNo">3353</span>  @Override<a name="line.3353"></a>
+<span class="sourceLineNo">3354</span>  public long updateReplicationPeerConfig(String peerId, ReplicationPeerConfig peerConfig)<a name="line.3354"></a>
+<span class="sourceLineNo">3355</span>      throws ReplicationException, IOException {<a name="line.3355"></a>
+<span class="sourceLineNo">3356</span>    LOG.info(getClientIdAuditPrefix() + " update replication peer config, id=" + peerId +<a name="line.3356"></a>
+<span class="sourceLineNo">3357</span>      ", config=" + peerConfig);<a name="line.3357"></a>
+<span class="sourceLineNo">3358</span>    return executePeerProcedure(new UpdatePeerConfigProcedure(peerId, peerConfig));<a name="line.3358"></a>
+<span class="sourceLineNo">3359</span>  }<a name="line.3359"></a>
+<span class="sourceLineNo">3360</span><a name="line.3360"></a>
+<span class="sourceLineNo">3361</span>  @Override<a name="line.3361"></a>
+<span class="sourceLineNo">3362</span>  public List&lt;ReplicationPeerDescription&gt; listReplicationPeers(String regex)<a name="line.3362"></a>
+<span class="sourceLineNo">3363</span>      throws ReplicationException, IOException {<a name="line.3363"></a>
+<span class="sourceLineNo">3364</span>    if (cpHost != null) {<a name="line.3364"></a>
+<span class="sourceLineNo">3365</span>      cpHost.preListReplicationPeers(regex);<a name="line.3365"></a>
+<span class="sourceLineNo">3366</span>    }<a name="line.3366"></a>
+<span class="sourceLineNo">3367</span>    LOG.info(getClientIdAuditPrefix() + " list replication peers, regex=" + regex);<a name="line.3367"></a>
+<span class="sourceLineNo">3368</span>    Pattern pattern = regex == null ? null : Pattern.compile(regex);<a name="line.3368"></a>
+<span class="sourceLineNo">3369</span>    List&lt;ReplicationPeerDescription&gt; peers =<a name="line.3369"></a>
+<span class="sourceLineNo">3370</span>      this.replicationPeerManager.listPeers(pattern);<a name="line.3370"></a>
+<span class="sourceLineNo">3371</span>    if (cpHost != null) {<a name="line.3371"></a>
+<span class="sourceLineNo">3372</span>      cpHost.postListReplicationPeers(regex);<a name="line.3372"></a>
+<span class="sourceLineNo">3373</span>    }<a name="line.3373"></a>
+<span class="sourceLineNo">3374</span>    return peers;<a name="line.3374"></a>
+<span class="sourceLineNo">3375</span>  }<a name="line.3375"></a>
+<span class="sourceLineNo">3376</span><a name="line.3376"></a>
+<span class="sourceLineNo">3377</span>  /**<a name="line.3377"></a>
+<span class="sourceLineNo">3378</span>   * Mark region server(s) as decommissioned (previously called 'draining') to prevent additional<a name="line.3378"></a>
+<span class="sourceLineNo">3379</span>   * regions from getting assigned to them. Also unload the regions on the servers asynchronously.0<a name="line.3379"></a>
+<span class="sourceLineNo">3380</span>   * @param servers Region servers to decommission.<a name="line.3380"></a>
+<span class="sourceLineNo">3381</span>   * @throws HBaseIOException<a name="line.3381"></a>
+<span class="sourceLineNo">3382</span>   */<a name="line.3382"></a>
+<span class="sourceLineNo">3383</span>  public void decommissionRegionServers(final List&lt;ServerName&gt; servers, final boolean offload)<a name="line.3383"></a>
+<span class="sourceLineNo">3384</span>      throws HBaseIOException {<a name="line.3384"></a>
+<span class="sourceLineNo">3385</span>    List&lt;ServerName&gt; serversAdded = new ArrayList&lt;&gt;(servers.size());<a name="line.3385"></a>
+<span class="sourceLineNo">3386</span>    // Place the decommission marker first.<a name="line.3386"></a>
+<span class="sourceLineNo">3387</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3387"></a>
+<span class="sourceLineNo">3388</span>    for (ServerName server : servers) {<a name="line.3388"></a>
+<span class="sourceLineNo">3389</span>      try {<a name="line.3389"></a>
+<span class="sourceLineNo">3390</span>        String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3390"></a>
+<span class="sourceLineNo">3391</span>        ZKUtil.createAndFailSilent(getZooKeeper(), node);<a name="line.3391"></a>
+<span class="sourceLineNo">3392</span>      } catch (KeeperException ke) {<a name="line.3392"></a>
+<span class="sourceLineNo">3393</span>        throw new HBaseIOException(<a name="line.3393"></a>
+<span class="sourceLineNo">3394</span>            this.zooKeeper.prefix("Unable to decommission '" + server.getServerName() + "'."), ke);<a name="line.3394"></a>
+<span class="sourceLineNo">3395</span>      }<a name="line.3395"></a>
+<span class="sourceLineNo">3396</span>      if (this.serverManager.addServerToDrainList(server)) {<a name="line.3396"></a>
+<span class="sourceLineNo">3397</span>        serversAdded.add(server);<a name="line.3397"></a>
+<span class="sourceLineNo">3398</span>      }<a name="line.3398"></a>
+<span class="sourceLineNo">3399</span>    }<a name="line.3399"></a>
+<span class="sourceLineNo">3400</span>    // Move the regions off the decommissioned servers.<a name="line.3400"></a>
+<span class="sourceLineNo">3401</span>    if (offload) {<a name="line.3401"></a>
+<span class="sourceLineNo">3402</span>      final List&lt;ServerName&gt; destServers = this.serverManager.createDestinationServersList();<a name="line.3402"></a>
+<span class="sourceLineNo">3403</span>      for (ServerName server : serversAdded) {<a name="line.3403"></a>
+<span class="sourceLineNo">3404</span>        final List&lt;RegionInfo&gt; regionsOnServer =<a name="line.3404"></a>
+<span class="sourceLineNo">3405</span>            this.assignmentManager.getRegionStates().getServerRegionInfoSet(server);<a name="line.3405"></a>
+<span class="sourceLineNo">3406</span>        for (RegionInfo hri : regionsOnServer) {<a name="line.3406"></a>
+<span class="sourceLineNo">3407</span>          ServerName dest = balancer.randomAssignment(hri, destServers);<a name="line.3407"></a>
+<span class="sourceLineNo">3408</span>          if (dest == null) {<a name="line.3408"></a>
+<span class="sourceLineNo">3409</span>            throw new HBaseIOException("Unable to determine a plan to move " + hri);<a name="line.3409"></a>
+<span class="sourceLineNo">3410</span>          }<a name="line.3410"></a>
+<span class="sourceLineNo">3411</span>          RegionPlan rp = new RegionPlan(hri, server, dest);<a name="line.3411"></a>
+<span class="sourceLineNo">3412</span>          this.assignmentManager.moveAsync(rp);<a name="line.3412"></a>
+<span class="sourceLineNo">3413</span>        }<a name="line.3413"></a>
+<span class="sourceLineNo">3414</span>      }<a name="line.3414"></a>
+<span class="sourceLineNo">3415</span>    }<a name="line.3415"></a>
+<span class="sourceLineNo">3416</span>  }<a name="line.3416"></a>
+<span class="sourceLineNo">3417</span><a name="line.3417"></a>
+<span class="sourceLineNo">3418</span>  /**<a name="line.3418"></a>
+<span class="sourceLineNo">3419</span>   * List region servers marked as decommissioned (previously called 'draining') to not get regions<a name="line.3419"></a>
+<span class="sourceLineNo">3420</span>   * assigned to them.<a name="line.3420"></a>
+<span class="sourceLineNo">3421</span>   * @return List of decommissioned servers.<a name="line.3421"></a>
+<span class="sourceLineNo">3422</span>   */<a name="line.3422"></a>
+<span class="sourceLineNo">3423</span>  public List&lt;ServerName&gt; listDecommissionedRegionServers() {<a name="line.3423"></a>
+<span class="sourceLineNo">3424</span>    return this.serverManager.getDrainingServersList();<a name="line.3424"></a>
+<span class="sourceLineNo">3425</span>  }<a name="line.3425"></a>
+<span class="sourceLineNo">3426</span><a name="line.3426"></a>
+<span class="sourceLineNo">3427</span>  /**<a name="line.3427"></a>
+<span class="sourceLineNo">3428</span>   * Remove decommission marker (previously called 'draining') from a region server to allow regions<a name="line.3428"></a>
+<span class="sourceLineNo">3429</span>   * assignments. Load regions onto the server asynchronously if a list of regions is given<a name="line.3429"></a>
+<span class="sourceLineNo">3430</span>   * @param server Region server to remove decommission marker from.<a name="line.3430"></a>
+<span class="sourceLineNo">3431</span>   * @throws HBaseIOException<a name="line.3431"></a>
+<span class="sourceLineNo">3432</span>   */<a name="line.3432"></a>
+<span class="sourceLineNo">3433</span>  public void recommissionRegionServer(final ServerName server,<a name="line.3433"></a>
+<span class="sourceLineNo">3434</span>      final List&lt;byte[]&gt; encodedRegionNames) throws HBaseIOException {<a name="line.3434"></a>
+<span class="sourceLineNo">3435</span>    // Remove the server from decommissioned (draining) server list.<a name="line.3435"></a>
+<span class="sourceLineNo">3436</span>    String parentZnode = getZooKeeper().znodePaths.drainingZNode;<a name="line.3436"></a>
+<span class="sourceLineNo">3437</span>    String node = ZNodePaths.joinZNode(parentZnode, server.getServerName());<a name="line.3437"></a>
+<span class="sourceLineNo">3438</span>    try {<a name="line.3438"></a>
+<span class="sourceLineNo">3439</span>      ZKUtil.deleteNodeFailSilent(getZooKeeper(), node);<a name="line.3439"></a>
+<span class="sourceLineNo">3440</span>    } catch (KeeperException ke) {<a name="line.3440"></a>
+<span class="sourceLineNo">3441</span>      throw new HBaseIOException(<a name="line.3441"></a>
+<span class="sourceLineNo">3442</span>          this.zooKeeper.prefix("Unable to recommission '" + server.getServerName() + "'."), ke);<a name="line.3442"></a>
+<span class="sourceLineNo">3443</span>    }<a name="line.3443"></a>
+<span class="sourceLineNo">3444</span>    this.serverManager.removeServerFromDrainList(server);<a name="line.3444"></a>
+<span class="sourceLineNo">3445</span><a name="line.3445"></a>
+<span class="sourceLineNo">3446</span>    // Load the regions onto the server if we are given a list of regions.<a name="line.3446"></a>
+<span class="sourceLineNo">3447</span>    if (encodedRegionNames == null || encodedRegionNames.isEmpty()) {<a name="line.3447"></a>
+<span class="sourceLineNo">3448</span>      return;<a name="line.3448"></a>
+<span class="sourceLineNo">3449</span>    }<a name="line.3449"></a>
+<span class="sourceLineNo">3450</span>    if (!this.serverManager.isServerOnline(server)) {<a name="line.3450"></a>
+<span class="sourceLineNo">3451</span>      return;<a name="line.3451"></a>
+<span class="sourceLineNo">3452</span>    }<a name="line.3452"></a>
+<span class="sourceLineNo">3453</span>    for (byte[] encodedRegionName : encodedRegionNames) {<a name="line.3453"></a>
+<span class="sourceLineNo">3454</span>      RegionState regionState =<a name="line.3454"></a>
+<span class="sourceLineNo">3455</span>          assignmentManager.getRegionStates().getRegionState(Bytes.toString(encodedRegionName));<a name="line.3455"></a>
+<span class="sourceLineNo">3456</span>      if (regionState == null) {<a name="line.3456"></a>
+<span class="sourceLineNo">3457</span>        LOG.warn("Unknown region " + Bytes.toStringBinary(encodedRegionName));<a name="line.3457"></a>
+<span class="sourceLineNo">3458</span>        continue;<a name="line.3458"></a>
+<span class="sourceLineNo">3459</span>      }<a name="line.3459"></a>
+<span class="sourceLineNo">3460</span>      RegionInfo hri = regionState.getRegion();<a name="line.3460"></a>
+<span class="sourceLineNo">3461</span>      if (server.equals(regionState.getServerName())) {<a name="line.3461"></a>
+<span class="sourceLineNo">3462</span>        LOG.info("Skipping move of region " + hri.getRegionNameAsString()<a name="line.3462"></a>
+<span class="sourceLineNo">3463</span>          + " because region already assigned to the same server " + server + ".");<a name="line.3463"></a>
+<span class="sourceLineNo">3464</span>        continue;<a name="line.3464"></a>
+<span class="sourceLineNo">3465</span>      }<a name="line.3465"></a>
+<span class="sourceLineNo">3466</span>      RegionPlan rp = new RegionPlan(hri, regionState.getServerName(), server);<a name="line.3466"></a>
+<span class="sourceLineNo">3467</span>      this.assignmentManager.moveAsync(rp);<a name="line.3467"></a>
+<span class="sourceLineNo">3468</span>    }<a name="line.3468"></a>
+<span class="sourceLineNo">3469</span>  }<a name="line.3469"></a>
+<span class="sourceLineNo">3470</span><a name="line.3470"></a>
+<span class="sourceLineNo">3471</span>  @Override<a name="line.3471"></a>
+<span class="sourceLineNo">3472</span>  public LockManager getLockManager() {<a name="line.3472"></a>
+<span class="sourceLineNo">3473</span>    return lockManager;<a name="line.3473"></a>
+<span class="sourceLineNo">3474</span>  }<a name="line.3474"></a>
+<span class="sourceLineNo">3475</span><a name="line.3475"></a>
+<span class="sourceLineNo">3476</span>  @Override<a name="line.3476"></a>
+<span class="sourceLineNo">3477</span>  public boolean recoverMeta() throws IOException {<a name="line.3477"></a>
+<span class="sourceLineNo">3478</span>    ProcedurePrepareLatch latch = ProcedurePrepareLatch.createLatch(2, 0);<a name="line.3478"></a>
+<span class="sourceLineNo">3479</span>    LOG.info("Running RecoverMetaProcedure to ensure proper hbase:meta deploy.");<a name="line.3479"></a>
+<span class="sourceLineNo">3480</span>    long procId = procedureExecutor.submitProcedure(new RecoverMetaProcedure(null, true, latch));<a name="line.3480"></a>
+<span class="sourceLineNo">3481</span>    latch.await();<a name="line.3481"></a>
+<span class="sourceLineNo">3482</span>    LOG.info("hbase:meta (default replica) deployed at=" +<a name="line.3482"></a>
+<span class="sourceLineNo">3483</span>        getMetaTableLocator().getMetaRegionLocation(getZooKeeper()));<a name="line.3483"></a>
+<span class="sourceLineNo">3484</span>    return assignmentManager.isMetaInitialized();<a name="line.3484"></a>
+<span class="sourceLineNo">3485</span>  }<a name="line.3485"></a>
+<span class="sourceLineNo">3486</span><a name="line.3486"></a>
+<span class="sourceLineNo">3487</span>  public QuotaObserverChore getQuotaObserverChore() {<a name="line.3487"></a>
+<span class="sourceLineNo">3488</span>    return this.quotaObserverChore;<a name="line.3488"></a>
+<span class="sourceLineNo">3489</span>  }<a name="line.3489"></a>
+<span class="sourceLineNo">3490</span><a name="line.3490"></a>
+<span class="sourceLineNo">3491</span>  public SpaceQuotaSnapshotNotifier getSpaceQuotaSnapshotNotifier() {<a name="line.3491"></a>
+<span class="sourceLineNo">3492</span>    return this.spaceQuotaSnapshotNotifier;<a name="line.3492"></a>
+<span class="sourceLineNo">3493</span>  }<a name="line.3493"></a>
+<span class="sourceLineNo">3494</span><a name="line.3494"></a>
+<span class="sourceLineNo">3495</span>  @SuppressWarnings("unchecked")<a name="line.3495"></a>
+<span class="sourceLineNo">3496</span>  private RemoteProcedure&lt;MasterProcedureEnv, ?&gt; getRemoteProcedure(long procId) {<a name="line.3496"></a>
+<span class="sourceLineNo">3497</span>    Procedure&lt;?&gt; procedure = procedureExecutor.getProcedure(procId);<a name="line.3497"></a>
+<span class="sourceLineNo">3498</span>    if (procedure == null) {<a name="line.3498"></a>
+<span class="sourceLineNo">3499</span>      return null;<a name="line.3499"></a>
+<span class="sourceLineNo">3500</span>    }<a name="line.3500"></a>
+<span class="sourceLineNo">3501</span>    assert procedure instanceof RemoteProcedure;<a name="line.3501"></a>
+<span class="sourceLineNo">3502</span>    return (RemoteProcedure&lt;MasterProcedureEnv, ?&gt;) procedure;<a name="line.3502"></a>
+<span class="sourceLineNo">3503</span>  }<a name="line.3503"></a>
+<span class="sourceLineNo">3504</span><a name="line.3504"></a>
+<span class="sourceLineNo">3505</span>  public void remoteProcedureCompleted(long procId) {<a name="line.3505"></a>
+<span class="sourceLineNo">3506</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3506"></a>
+<span class="sourceLineNo">3507</span>    if (procedure != null) {<a name="line.3507"></a>
+<span class="sourceLineNo">3508</span>      procedure.remoteOperationCompleted(procedureExecutor.getEnvironment());<a name="line.3508"></a>
+<span class="sourceLineNo">3509</span>    }<a name="line.3509"></a>
+<span class="sourceLineNo">3510</span>  }<a name="line.3510"></a>
+<span class="sourceLineNo">3511</span><a name="line.3511"></a>
+<span class="sourceLineNo">3512</span>  public void remoteProcedureFailed(long procId, RemoteProcedureException error) {<a name="line.3512"></a>
+<span class="sourceLineNo">3513</span>    RemoteProcedure&lt;MasterProcedureEnv, ?&gt; procedure = getRemoteProcedure(procId);<a name="line.3513"></a>
+<span class="sourceLineNo">3514</span>    if (procedure != null) {<a name="line.3514"></a>
+<span class="sourceLineNo">3515</span>      procedure.remoteOperationFailed(procedureExecutor.getEnvironment(), error);<a name="line.3515"></a>
+<span class="sourceLineNo">3516</span>    }<a name="line.3516"></a>
+<span class="sourceLineNo">3517</span>  }<a name="line.3517"></a>
+<span class="sourceLineNo">3518</span><a name="line.3518"></a>
+<span class="sourceLineNo">3519</span>  @Override<a name="line.3519"></a>
+<span class="sourceLineNo">3520</span>  public ReplicationPeerManager getReplicationPeerManager() {<a name="line.3520"></a>
+<span class="sourceLineNo">3521</span>    return replicationPeerManager;<a name="line.3521"></a>
+<span class="sourceLineNo">3522</span>  }<a name="line.3522"></a>
+<span class="sourceLineNo">3523</span>}<a name="line.3523"></a>
 
 
 


[04/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
index a5b3b10..40819c7 100644
--- a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
+++ b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.html
@@ -45,136 +45,139 @@
 <span class="sourceLineNo">037</span>import org.apache.hadoop.hbase.testclassification.SmallTests;<a name="line.37"></a>
 <span class="sourceLineNo">038</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.38"></a>
 <span class="sourceLineNo">039</span>import org.junit.BeforeClass;<a name="line.39"></a>
-<span class="sourceLineNo">040</span>import org.junit.Test;<a name="line.40"></a>
-<span class="sourceLineNo">041</span>import org.junit.experimental.categories.Category;<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>@Category({RegionServerTests.class, SmallTests.class})<a name="line.43"></a>
-<span class="sourceLineNo">044</span>public class TestMemstoreLABWithoutPool {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>  private final static Configuration conf = new Configuration();<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>  private static final byte[] rk = Bytes.toBytes("r1");<a name="line.47"></a>
-<span class="sourceLineNo">048</span>  private static final byte[] cf = Bytes.toBytes("f");<a name="line.48"></a>
-<span class="sourceLineNo">049</span>  private static final byte[] q = Bytes.toBytes("q");<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>  @BeforeClass<a name="line.51"></a>
-<span class="sourceLineNo">052</span>  public static void setUpBeforeClass() throws Exception {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    long globalMemStoreLimit = (long) (ManagementFactory.getMemoryMXBean().getHeapMemoryUsage()<a name="line.53"></a>
-<span class="sourceLineNo">054</span>        .getMax() * 0.8);<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    // disable pool<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    ChunkCreator.initialize(MemStoreLABImpl.CHUNK_SIZE_DEFAULT + Bytes.SIZEOF_LONG, false, globalMemStoreLimit,<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      0.0f, MemStoreLAB.POOL_INITIAL_SIZE_DEFAULT, null);<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>  /**<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   * Test a bunch of random allocations<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   */<a name="line.62"></a>
-<span class="sourceLineNo">063</span>  @Test<a name="line.63"></a>
-<span class="sourceLineNo">064</span>  public void testLABRandomAllocation() {<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    Random rand = new Random();<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    MemStoreLAB mslab = new MemStoreLABImpl();<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    int expectedOff = 0;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    ByteBuffer lastBuffer = null;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    int lastChunkId = -1;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    // 100K iterations by 0-1K alloc -&gt; 50MB expected<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    // should be reasonable for unit test and also cover wraparound<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    // behavior<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    for (int i = 0; i &lt; 100000; i++) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>      int valSize = rand.nextInt(1000);<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      KeyValue kv = new KeyValue(rk, cf, q, new byte[valSize]);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      int size = KeyValueUtil.length(kv);<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      ByteBufferKeyValue newKv = (ByteBufferKeyValue) mslab.copyCellInto(kv);<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      if (newKv.getBuffer() != lastBuffer) {<a name="line.78"></a>
-<span class="sourceLineNo">079</span>        // since we add the chunkID at the 0th offset of the chunk and the<a name="line.79"></a>
-<span class="sourceLineNo">080</span>        // chunkid is an int we need to account for those 4 bytes<a name="line.80"></a>
-<span class="sourceLineNo">081</span>        expectedOff = Bytes.SIZEOF_INT;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>        lastBuffer = newKv.getBuffer();<a name="line.82"></a>
-<span class="sourceLineNo">083</span>        int chunkId = newKv.getBuffer().getInt(0);<a name="line.83"></a>
-<span class="sourceLineNo">084</span>        assertTrue("chunkid should be different", chunkId != lastChunkId);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>        lastChunkId = chunkId;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      }<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      assertEquals(expectedOff, newKv.getOffset());<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      assertTrue("Allocation overruns buffer",<a name="line.88"></a>
-<span class="sourceLineNo">089</span>          newKv.getOffset() + size &lt;= newKv.getBuffer().capacity());<a name="line.89"></a>
-<span class="sourceLineNo">090</span>      expectedOff += size;<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    }<a name="line.91"></a>
-<span class="sourceLineNo">092</span>  }<a name="line.92"></a>
-<span class="sourceLineNo">093</span><a name="line.93"></a>
-<span class="sourceLineNo">094</span>  /**<a name="line.94"></a>
-<span class="sourceLineNo">095</span>   * Test frequent chunk retirement with chunk pool triggered by lots of threads, making sure<a name="line.95"></a>
-<span class="sourceLineNo">096</span>   * there's no memory leak (HBASE-16195)<a name="line.96"></a>
-<span class="sourceLineNo">097</span>   * @throws Exception if any error occurred<a name="line.97"></a>
-<span class="sourceLineNo">098</span>   */<a name="line.98"></a>
-<span class="sourceLineNo">099</span>  @Test<a name="line.99"></a>
-<span class="sourceLineNo">100</span>  public void testLABChunkQueueWithMultipleMSLABs() throws Exception {<a name="line.100"></a>
-<span class="sourceLineNo">101</span>    Configuration conf = HBaseConfiguration.create();<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    MemStoreLABImpl[] mslab = new MemStoreLABImpl[10];<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      mslab[i] = new MemStoreLABImpl(conf);<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    }<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    // launch multiple threads to trigger frequent chunk retirement<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    List&lt;Thread&gt; threads = new ArrayList&lt;&gt;();<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    // create smaller sized kvs<a name="line.108"></a>
-<span class="sourceLineNo">109</span>    final KeyValue kv = new KeyValue(Bytes.toBytes("r"), Bytes.toBytes("f"), Bytes.toBytes("q"),<a name="line.109"></a>
-<span class="sourceLineNo">110</span>        new byte[0]);<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      for (int j = 0; j &lt; 10; j++) {<a name="line.112"></a>
-<span class="sourceLineNo">113</span>        threads.add(getChunkQueueTestThread(mslab[i], "testLABChunkQueue-" + j, kv));<a name="line.113"></a>
-<span class="sourceLineNo">114</span>      }<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    }<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    for (Thread thread : threads) {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      thread.start();<a name="line.117"></a>
+<span class="sourceLineNo">040</span>import org.junit.Ignore;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>import org.junit.Test;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>import org.junit.experimental.categories.Category;<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>@Ignore // See HBASE-19742 for issue on reenabling.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>@Category({RegionServerTests.class, SmallTests.class})<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class TestMemstoreLABWithoutPool {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>  private final static Configuration conf = new Configuration();<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>  private static final byte[] rk = Bytes.toBytes("r1");<a name="line.50"></a>
+<span class="sourceLineNo">051</span>  private static final byte[] cf = Bytes.toBytes("f");<a name="line.51"></a>
+<span class="sourceLineNo">052</span>  private static final byte[] q = Bytes.toBytes("q");<a name="line.52"></a>
+<span class="sourceLineNo">053</span><a name="line.53"></a>
+<span class="sourceLineNo">054</span>  @BeforeClass<a name="line.54"></a>
+<span class="sourceLineNo">055</span>  public static void setUpBeforeClass() throws Exception {<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    long globalMemStoreLimit = (long) (ManagementFactory.getMemoryMXBean().getHeapMemoryUsage()<a name="line.56"></a>
+<span class="sourceLineNo">057</span>        .getMax() * 0.8);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    // disable pool<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    ChunkCreator.initialize(MemStoreLABImpl.CHUNK_SIZE_DEFAULT + Bytes.SIZEOF_LONG, false, globalMemStoreLimit,<a name="line.59"></a>
+<span class="sourceLineNo">060</span>      0.0f, MemStoreLAB.POOL_INITIAL_SIZE_DEFAULT, null);<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>  /**<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   * Test a bunch of random allocations<a name="line.64"></a>
+<span class="sourceLineNo">065</span>   */<a name="line.65"></a>
+<span class="sourceLineNo">066</span>  @Test<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  public void testLABRandomAllocation() {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    Random rand = new Random();<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    MemStoreLAB mslab = new MemStoreLABImpl();<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    int expectedOff = 0;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    ByteBuffer lastBuffer = null;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    int lastChunkId = -1;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    // 100K iterations by 0-1K alloc -&gt; 50MB expected<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    // should be reasonable for unit test and also cover wraparound<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    // behavior<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    for (int i = 0; i &lt; 100000; i++) {<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      int valSize = rand.nextInt(1000);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      KeyValue kv = new KeyValue(rk, cf, q, new byte[valSize]);<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      int size = KeyValueUtil.length(kv);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      ByteBufferKeyValue newKv = (ByteBufferKeyValue) mslab.copyCellInto(kv);<a name="line.80"></a>
+<span class="sourceLineNo">081</span>      if (newKv.getBuffer() != lastBuffer) {<a name="line.81"></a>
+<span class="sourceLineNo">082</span>        // since we add the chunkID at the 0th offset of the chunk and the<a name="line.82"></a>
+<span class="sourceLineNo">083</span>        // chunkid is an int we need to account for those 4 bytes<a name="line.83"></a>
+<span class="sourceLineNo">084</span>        expectedOff = Bytes.SIZEOF_INT;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>        lastBuffer = newKv.getBuffer();<a name="line.85"></a>
+<span class="sourceLineNo">086</span>        int chunkId = newKv.getBuffer().getInt(0);<a name="line.86"></a>
+<span class="sourceLineNo">087</span>        assertTrue("chunkid should be different", chunkId != lastChunkId);<a name="line.87"></a>
+<span class="sourceLineNo">088</span>        lastChunkId = chunkId;<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      assertEquals(expectedOff, newKv.getOffset());<a name="line.90"></a>
+<span class="sourceLineNo">091</span>      assertTrue("Allocation overruns buffer",<a name="line.91"></a>
+<span class="sourceLineNo">092</span>          newKv.getOffset() + size &lt;= newKv.getBuffer().capacity());<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      expectedOff += size;<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    }<a name="line.94"></a>
+<span class="sourceLineNo">095</span>  }<a name="line.95"></a>
+<span class="sourceLineNo">096</span><a name="line.96"></a>
+<span class="sourceLineNo">097</span>  /**<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   * Test frequent chunk retirement with chunk pool triggered by lots of threads, making sure<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   * there's no memory leak (HBASE-16195)<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   * @throws Exception if any error occurred<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>  @Test<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  public void testLABChunkQueueWithMultipleMSLABs() throws Exception {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    Configuration conf = HBaseConfiguration.create();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>    MemStoreLABImpl[] mslab = new MemStoreLABImpl[10];<a name="line.105"></a>
+<span class="sourceLineNo">106</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.106"></a>
+<span class="sourceLineNo">107</span>      mslab[i] = new MemStoreLABImpl(conf);<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    }<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    // launch multiple threads to trigger frequent chunk retirement<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    List&lt;Thread&gt; threads = new ArrayList&lt;&gt;();<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    // create smaller sized kvs<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    final KeyValue kv = new KeyValue(Bytes.toBytes("r"), Bytes.toBytes("f"), Bytes.toBytes("q"),<a name="line.112"></a>
+<span class="sourceLineNo">113</span>        new byte[0]);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      for (int j = 0; j &lt; 10; j++) {<a name="line.115"></a>
+<span class="sourceLineNo">116</span>        threads.add(getChunkQueueTestThread(mslab[i], "testLABChunkQueue-" + j, kv));<a name="line.116"></a>
+<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
 <span class="sourceLineNo">118</span>    }<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    // let it run for some time<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    Thread.sleep(3000);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>    for (Thread thread : threads) {<a name="line.121"></a>
-<span class="sourceLineNo">122</span>      thread.interrupt();<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    }<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    boolean threadsRunning = true;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    boolean alive = false;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    while (threadsRunning) {<a name="line.126"></a>
-<span class="sourceLineNo">127</span>      alive = false;<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      for (Thread thread : threads) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>        if (thread.isAlive()) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>          alive = true;<a name="line.130"></a>
-<span class="sourceLineNo">131</span>          break;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>        }<a name="line.132"></a>
-<span class="sourceLineNo">133</span>      }<a name="line.133"></a>
-<span class="sourceLineNo">134</span>      if (!alive) {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>        threadsRunning = false;<a name="line.135"></a>
+<span class="sourceLineNo">119</span>    for (Thread thread : threads) {<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      thread.start();<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    }<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    // let it run for some time<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    Thread.sleep(3000);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    for (Thread thread : threads) {<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      thread.interrupt();<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    boolean threadsRunning = true;<a name="line.127"></a>
+<span class="sourceLineNo">128</span>    boolean alive = false;<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    while (threadsRunning) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      alive = false;<a name="line.130"></a>
+<span class="sourceLineNo">131</span>      for (Thread thread : threads) {<a name="line.131"></a>
+<span class="sourceLineNo">132</span>        if (thread.isAlive()) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>          alive = true;<a name="line.133"></a>
+<span class="sourceLineNo">134</span>          break;<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        }<a name="line.135"></a>
 <span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    }<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    // close the mslab<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      mslab[i].close();<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    // all of the chunkIds would have been returned back<a name="line.142"></a>
-<span class="sourceLineNo">143</span>    assertTrue("All the chunks must have been cleared",<a name="line.143"></a>
-<span class="sourceLineNo">144</span>        ChunkCreator.INSTANCE.numberOfMappedChunks() == 0);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>  }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>  private Thread getChunkQueueTestThread(final MemStoreLABImpl mslab, String threadName,<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      Cell cellToCopyInto) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    Thread thread = new Thread() {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      volatile boolean stopped = false;<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>      @Override<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      public void run() {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>        while (!stopped) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>          // keep triggering chunk retirement<a name="line.155"></a>
-<span class="sourceLineNo">156</span>          mslab.copyCellInto(cellToCopyInto);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>        }<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      @Override<a name="line.160"></a>
-<span class="sourceLineNo">161</span>      public void interrupt() {<a name="line.161"></a>
-<span class="sourceLineNo">162</span>        this.stopped = true;<a name="line.162"></a>
-<span class="sourceLineNo">163</span>      }<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    };<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    thread.setName(threadName);<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    thread.setDaemon(true);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    return thread;<a name="line.167"></a>
-<span class="sourceLineNo">168</span>  }<a name="line.168"></a>
-<span class="sourceLineNo">169</span>}<a name="line.169"></a>
+<span class="sourceLineNo">137</span>      if (!alive) {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>        threadsRunning = false;<a name="line.138"></a>
+<span class="sourceLineNo">139</span>      }<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    }<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    // close the mslab<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    for (int i = 0; i &lt; 10; i++) {<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      mslab[i].close();<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    }<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    // all of the chunkIds would have been returned back<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    assertTrue("All the chunks must have been cleared",<a name="line.146"></a>
+<span class="sourceLineNo">147</span>        ChunkCreator.INSTANCE.numberOfMappedChunks() == 0);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>  }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>  private Thread getChunkQueueTestThread(final MemStoreLABImpl mslab, String threadName,<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      Cell cellToCopyInto) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    Thread thread = new Thread() {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      volatile boolean stopped = false;<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>      @Override<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      public void run() {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>        while (!stopped) {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>          // keep triggering chunk retirement<a name="line.158"></a>
+<span class="sourceLineNo">159</span>          mslab.copyCellInto(cellToCopyInto);<a name="line.159"></a>
+<span class="sourceLineNo">160</span>        }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      @Override<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public void interrupt() {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>        this.stopped = true;<a name="line.165"></a>
+<span class="sourceLineNo">166</span>      }<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    };<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    thread.setName(threadName);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    thread.setDaemon(true);<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    return thread;<a name="line.170"></a>
+<span class="sourceLineNo">171</span>  }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>}<a name="line.172"></a>
 
 
 


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

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
index ce457e9..6616e32 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html
@@ -74,7 +74,7 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.classes.inherited.from.class.org.apache.hadoop.hbase.security.access.SecureTestUtil">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>
@@ -100,23 +100,45 @@ var activeTableTab = "activeTableTab";
 <li><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
+<li><a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">org.apache.hadoop.hbase.security.access.SecureTestUtil</a></li>
+<li>
+<ul class="inheritance">
 <li>org.apache.hadoop.hbase.rsgroup.TestRSGroupsWithACL</li>
 </ul>
 </li>
 </ul>
+</li>
+</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.57">TestRSGroupsWithACL</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>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.55">TestRSGroupsWithACL</a>
+extends <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil</a></pre>
+<div class="block">Performs authorization checks for rsgroup operations, according to different
+ levels of authorized users.</div>
 </li>
 </ul>
 </div>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.hbase.security.access.SecureTestUtil">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.hadoop.hbase.security.access.<a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil</a></h3>
+<code><a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.AccessTestAction.html" title="interface in org.apache.hadoop.hbase.security.access">SecureTestUtil.AccessTestAction</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.MasterSyncObserver.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil.MasterSyncObserver</a></code></li>
+</ul>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -154,40 +176,32 @@ 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/rsgroup/TestRSGroupsWithACL.html#LOG">LOG</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>org.junit.rules.TestName</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#name">name</a></span></code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#rsGroupAdminEndpoint">rsGroupAdminEndpoint</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.security.User</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#SUPERUSER">SUPERUSER</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.client.Connection</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#systemUserConnection">systemUserConnection</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code>private static byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#TEST_FAMILY">TEST_FAMILY</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.TableName</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#TEST_TABLE">TEST_TABLE</a></span></code>&nbsp;</td>
 </tr>
-<tr class="altColor">
+<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/rsgroup/TestRSGroupsWithACL.html#TEST_UTIL">TEST_UTIL</a></span></code>&nbsp;</td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code>private static org.apache.hadoop.hbase.security.User</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#USER_ADMIN">USER_ADMIN</a></span></code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.security.User</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#USER_ADMIN_CF">USER_ADMIN_CF</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#USER_ADMIN">USER_ADMIN</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>private static org.apache.hadoop.hbase.security.User</code></td>
@@ -319,6 +333,13 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.security.access.SecureTestUtil">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.security.access.<a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil</a></h3>
+<code><a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#checkGlobalPerms-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.security.access.Permission.Action...-">checkGlobalPerms</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#checkTablePerms-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action...-">checkTablePerms</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#checkTablePerms-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission...-">checkTablePerms</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#checkTablePerms-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.A
 ction...-">checkTablePerms</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#checkTablePerms-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission...-">checkTablePerms</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#configureSuperuser-org.apache.hadoop.conf.Configuration-">configureSuperuser</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#convertToNamespace-java.lang.String-">convertToNamespace</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createNamespace-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.NamespaceDescriptor-">createNamespace</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Admin-org.apache
 .hadoop.hbase.client.TableDescriptor-">createTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Admin-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.TableDescriptor-">createTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.TableDescriptor-byte:A:A-">createTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#createTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.TableName-byte:A:A-">createTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/Se
 cureTestUtil.html#deleteNamespace-org.apache.hadoop.hbase.HBaseTestingUtility-java.lang.String-">deleteNamespace</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#deleteTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Admin-org.apache.hadoop.hbase.TableName-">deleteTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#deleteTable-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.TableName-">deleteTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#enableSecurity-org.apache.hadoop.conf.Configuration-">enableSecurity</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#grantGlobal-org.apache.hadoop.hbase.HBaseTestingUtility-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantGlobal</a>, <a href="../../../../../org/apache/hadoop/hbase/security/acce
 ss/SecureTestUtil.html#grantGlobalUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Connection-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantGlobalUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#grantOnNamespace-org.apache.hadoop.hbase.HBaseTestingUtility-java.lang.String-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantOnNamespace</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#grantOnNamespaceUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Connection-java.lang.String-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantOnNamespaceUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#grantOnTable-org.apache.hadoo
 p.hbase.HBaseTestingUtility-java.lang.String-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantOnTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#grantOnTableUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Connection-java.lang.String-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action...-">grantOnTableUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeFromNamespace-org.apache.hadoop.hbase.HBaseTestingUtility-java.lang.String-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeFromNamespace</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeFromNamespaceUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.
 apache.hadoop.hbase.client.Connection-java.lang.String-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeFromNamespaceUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeFromTable-org.apache.hadoop.hbase.HBaseTestingUtility-java.lang.String-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeFromTable</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeFromTableUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Connection-java.lang.String-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeFromTableUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeGlobal-org.apache.hadoop.hbase.HBaseTestingUtil
 ity-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeGlobal</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#revokeGlobalUsingAccessControlClient-org.apache.hadoop.hbase.HBaseTestingUtility-org.apache.hadoop.hbase.client.Connection-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action...-">revokeGlobalUsingAccessControlClient</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyAllowed-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction-org.apache.hadoop.hbase.security.User...-">verifyAllowed</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyAllowed-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction...-">verifyAllowed</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyAllowed-org.
 apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction-int-">verifyAllowed</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyConfiguration-org.apache.hadoop.conf.Configuration-">verifyConfiguration</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyDenied-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction-org.apache.hadoop.hbase.security.User...-">verifyDenied</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyDenied-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction...-">verifyDenied</a>, <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyIfEmptyList-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction-org.apache.hadoop.hbase.security.User...-">verifyIfEmptyList</a>
 , <a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html#verifyIfNull-org.apache.hadoop.hbase.security.access.SecureTestUtil.AccessTestAction-org.apache.hadoop.hbase.security.User...-">verifyIfNull</a></code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -345,7 +366,7 @@ 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/rsgroup/TestRSGroupsWithACL.html#line.58">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.56">LOG</a></pre>
 </li>
 </ul>
 <a name="TEST_TABLE">
@@ -354,7 +375,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>TEST_TABLE</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.TableName <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.59">TEST_TABLE</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.TableName <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.57">TEST_TABLE</a></pre>
 </li>
 </ul>
 <a name="TEST_UTIL">
@@ -363,7 +384,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>TEST_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/rsgroup/TestRSGroupsWithACL.html#line.60">TEST_UTIL</a></pre>
+<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/rsgroup/TestRSGroupsWithACL.html#line.58">TEST_UTIL</a></pre>
 </li>
 </ul>
 <a name="conf">
@@ -372,7 +393,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>conf</h4>
-<pre>private static&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.61">conf</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.conf.Configuration <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.59">conf</a></pre>
 </li>
 </ul>
 <a name="systemUserConnection">
@@ -381,7 +402,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>systemUserConnection</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.client.Connection <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.63">systemUserConnection</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.client.Connection <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.61">systemUserConnection</a></pre>
 </li>
 </ul>
 <a name="SUPERUSER">
@@ -390,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>SUPERUSER</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.65">SUPERUSER</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.63">SUPERUSER</a></pre>
 </li>
 </ul>
 <a name="USER_ADMIN">
@@ -399,7 +420,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_ADMIN</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.67">USER_ADMIN</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.65">USER_ADMIN</a></pre>
 </li>
 </ul>
 <a name="USER_RW">
@@ -408,7 +429,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_RW</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.69">USER_RW</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.67">USER_RW</a></pre>
 </li>
 </ul>
 <a name="USER_RO">
@@ -417,7 +438,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_RO</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.71">USER_RO</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.69">USER_RO</a></pre>
 </li>
 </ul>
 <a name="USER_OWNER">
@@ -426,7 +447,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_OWNER</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.73">USER_OWNER</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.71">USER_OWNER</a></pre>
 </li>
 </ul>
 <a name="USER_CREATE">
@@ -435,7 +456,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_CREATE</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.75">USER_CREATE</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.73">USER_CREATE</a></pre>
 </li>
 </ul>
 <a name="USER_NONE">
@@ -444,16 +465,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_NONE</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.77">USER_NONE</a></pre>
-</li>
-</ul>
-<a name="USER_ADMIN_CF">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>USER_ADMIN_CF</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.79">USER_ADMIN_CF</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.75">USER_NONE</a></pre>
 </li>
 </ul>
 <a name="GROUP_ADMIN">
@@ -462,7 +474,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>GROUP_ADMIN</h4>
-<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.81">GROUP_ADMIN</a></pre>
+<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.77">GROUP_ADMIN</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.rsgroup.TestRSGroupsWithACL.GROUP_ADMIN">Constant Field Values</a></dd>
@@ -475,7 +487,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>GROUP_CREATE</h4>
-<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.82">GROUP_CREATE</a></pre>
+<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.78">GROUP_CREATE</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.rsgroup.TestRSGroupsWithACL.GROUP_CREATE">Constant Field Values</a></dd>
@@ -488,7 +500,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>GROUP_READ</h4>
-<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.83">GROUP_READ</a></pre>
+<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.79">GROUP_READ</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.rsgroup.TestRSGroupsWithACL.GROUP_READ">Constant Field Values</a></dd>
@@ -501,7 +513,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>GROUP_WRITE</h4>
-<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.84">GROUP_WRITE</a></pre>
+<pre>private 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/rsgroup/TestRSGroupsWithACL.html#line.80">GROUP_WRITE</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.rsgroup.TestRSGroupsWithACL.GROUP_WRITE">Constant Field Values</a></dd>
@@ -514,7 +526,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_GROUP_ADMIN</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.86">USER_GROUP_ADMIN</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.82">USER_GROUP_ADMIN</a></pre>
 </li>
 </ul>
 <a name="USER_GROUP_CREATE">
@@ -523,7 +535,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_GROUP_CREATE</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.87">USER_GROUP_CREATE</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.83">USER_GROUP_CREATE</a></pre>
 </li>
 </ul>
 <a name="USER_GROUP_READ">
@@ -532,7 +544,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_GROUP_READ</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.88">USER_GROUP_READ</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.84">USER_GROUP_READ</a></pre>
 </li>
 </ul>
 <a name="USER_GROUP_WRITE">
@@ -541,7 +553,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>USER_GROUP_WRITE</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.89">USER_GROUP_WRITE</a></pre>
+<pre>private static&nbsp;org.apache.hadoop.hbase.security.User <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.85">USER_GROUP_WRITE</a></pre>
 </li>
 </ul>
 <a name="TEST_FAMILY">
@@ -550,25 +562,16 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>TEST_FAMILY</h4>
-<pre>private static&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.91">TEST_FAMILY</a></pre>
+<pre>private static&nbsp;byte[] <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.87">TEST_FAMILY</a></pre>
 </li>
 </ul>
 <a name="rsGroupAdminEndpoint">
 <!--   -->
 </a>
-<ul class="blockList">
-<li class="blockList">
-<h4>rsGroupAdminEndpoint</h4>
-<pre>private static&nbsp;org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.93">rsGroupAdminEndpoint</a></pre>
-</li>
-</ul>
-<a name="name">
-<!--   -->
-</a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>name</h4>
-<pre>public&nbsp;org.junit.rules.TestName <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.96">name</a></pre>
+<h4>rsGroupAdminEndpoint</h4>
+<pre>private static&nbsp;org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint <a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.89">rsGroupAdminEndpoint</a></pre>
 </li>
 </ul>
 </li>
@@ -585,7 +588,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestRSGroupsWithACL</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.57">TestRSGroupsWithACL</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.55">TestRSGroupsWithACL</a>()</pre>
 </li>
 </ul>
 </li>
@@ -602,7 +605,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setupBeforeClass</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.99">setupBeforeClass</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.92">setupBeforeClass</a>()
                              throws <a href="http://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>
@@ -616,7 +619,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setUpTableAndUserPermissions</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.144">setUpTableAndUserPermissions</a>()
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.132">setUpTableAndUserPermissions</a>()
                                           throws <a href="http://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>
@@ -630,7 +633,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>cleanUp</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.194">cleanUp</a>()
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.178">cleanUp</a>()
                      throws <a href="http://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>
@@ -644,7 +647,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>tearDownAfterClass</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.211">tearDownAfterClass</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.193">tearDownAfterClass</a>()
                                throws <a href="http://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>
@@ -658,12 +661,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>configureRSGroupAdminEndpoint</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.218">configureRSGroupAdminEndpoint</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
-                                           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>
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.200">configureRSGroupAdminEndpoint</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
 </li>
 </ul>
 <a name="testGetRSGroupInfo--">
@@ -672,7 +670,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testGetRSGroupInfo</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.230">testGetRSGroupInfo</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.212">testGetRSGroupInfo</a>()
                         throws <a href="http://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>
@@ -686,7 +684,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testGetRSGroupInfoOfTable</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.245">testGetRSGroupInfoOfTable</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.224">testGetRSGroupInfoOfTable</a>()
                                throws <a href="http://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>
@@ -700,7 +698,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testMoveServers</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.260">testMoveServers</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.236">testMoveServers</a>()
                      throws <a href="http://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>
@@ -714,7 +712,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testMoveTables</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.275">testMoveTables</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.248">testMoveTables</a>()
                     throws <a href="http://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>
@@ -728,7 +726,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testAddRSGroup</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.290">testAddRSGroup</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.260">testAddRSGroup</a>()
                     throws <a href="http://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>
@@ -742,7 +740,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testRemoveRSGroup</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.305">testRemoveRSGroup</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.272">testRemoveRSGroup</a>()
                        throws <a href="http://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>
@@ -756,7 +754,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testBalanceRSGroup</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.320">testBalanceRSGroup</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.284">testBalanceRSGroup</a>()
                         throws <a href="http://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>
@@ -770,7 +768,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testListRSGroup</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.335">testListRSGroup</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.296">testListRSGroup</a>()
                      throws <a href="http://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>
@@ -784,7 +782,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testGetRSGroupInfoOfServer</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.350">testGetRSGroupInfoOfServer</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.308">testGetRSGroupInfoOfServer</a>()
                                 throws <a href="http://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>
@@ -798,7 +796,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>testMoveServersAndTables</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.365">testMoveServersAndTables</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html#line.320">testMoveServersAndTables</a>()
                               throws <a href="http://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>
@@ -859,7 +857,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.classes.inherited.from.class.org.apache.hadoop.hbase.security.access.SecureTestUtil">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>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-summary.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-summary.html b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-summary.html
index ac3244c..3497cea 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-summary.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-summary.html
@@ -102,7 +102,10 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a></td>
-<td class="colLast">&nbsp;</td>
+<td class="colLast">
+<div class="block">Performs authorization checks for rsgroup operations, according to different
+ levels of authorized users.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/hadoop/hbase/rsgroup/VerifyingRSGroupAdminClient.html" title="class in org.apache.hadoop.hbase.rsgroup">VerifyingRSGroupAdminClient</a></td>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-tree.html
index 822caff..bb597f0 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/rsgroup/package-tree.html
@@ -81,6 +81,11 @@
 <ul>
 <li type="circle">java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
 <ul>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">SecureTestUtil</span></a>
+<ul>
+<li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsWithACL</span></a></li>
+</ul>
+</li>
 <li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsBase.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsBase</span></a>
 <ul>
 <li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/IntegrationTestRSGroup.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">IntegrationTestRSGroup</span></a></li>
@@ -88,7 +93,6 @@
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsOfflineMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsWithACL</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="../../../../../org/apache/hadoop/hbase/rsgroup/VerifyingRSGroupAdminClient.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">VerifyingRSGroupAdminClient</span></a> (implements org.apache.hadoop.hbase.rsgroup.RSGroupAdmin)</li>
 </ul>
 </li>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/security/access/SecureTestUtil.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/security/access/SecureTestUtil.html b/testdevapidocs/org/apache/hadoop/hbase/security/access/SecureTestUtil.html
index 6652373..00af333 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/security/access/SecureTestUtil.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/security/access/SecureTestUtil.html
@@ -109,7 +109,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <dl>
 <dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessControlFilter</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController2</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController3.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController3</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html" title="class in org.apache.hadoop.hbase.security.access">TestCellACLs</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html" title="cl
 ass in org.apache.hadoop.hbase.security.access">TestCellACLWithMultipleVersions</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html" title="class in org.apache.hadoop.hbase.security.access">TestCoprocessorWhitelistMasterObserver</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestNamespaceCommands.html" title="class in org.apache.hadoop.hbase.security.access">TestNamespaceCommands</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html" title="class in org.apache.hadoop.hbase.security.access">TestScanEarlyTermination</a>, <a href="../../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAcl.html" title="class in org.apache.hadoop.hbase.client">TestSnapshotWithAcl</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.access">TestWithDisabledAu
 thorization</a></dd>
+<dd><a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessControlFilter.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessControlFilter</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController2.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController2</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestAccessController3.html" title="class in org.apache.hadoop.hbase.security.access">TestAccessController3</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCellACLs.html" title="class in org.apache.hadoop.hbase.security.access">TestCellACLs</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html" title="cl
 ass in org.apache.hadoop.hbase.security.access">TestCellACLWithMultipleVersions</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html" title="class in org.apache.hadoop.hbase.security.access">TestCoprocessorWhitelistMasterObserver</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestNamespaceCommands.html" title="class in org.apache.hadoop.hbase.security.access">TestNamespaceCommands</a>, <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a>, <a href="../../../../../../org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html" title="class in org.apache.hadoop.hbase.security.access">TestScanEarlyTermination</a>, <a href="../../../../../../org/apache/hadoop/hbase/client/TestSnapshotWithAcl.html" title="class in org.apache.hadoop.hbase.client">TestSnapshotWithAcl</a>, <a href="../../../.
 ./../../org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.access">TestWithDisabledAuthorization</a></dd>
 </dl>
 <hr>
 <br>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html b/testdevapidocs/org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html
index 54b5d57..f7cf097 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html
@@ -87,6 +87,10 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.hadoop.hbase.rsgroup">org.apache.hadoop.hbase.rsgroup</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.access">org.apache.hadoop.hbase.security.access</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
@@ -113,6 +117,27 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.hadoop.hbase.rsgroup">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil</a> in <a href="../../../../../../../org/apache/hadoop/hbase/rsgroup/package-summary.html">org.apache.hadoop.hbase.rsgroup</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
+<caption><span>Subclasses of <a href="../../../../../../../org/apache/hadoop/hbase/security/access/SecureTestUtil.html" title="class in org.apache.hadoop.hbase.security.access">SecureTestUtil</a> in <a href="../../../../../../../org/apache/hadoop/hbase/rsgroup/package-summary.html">org.apache.hadoop.hbase.rsgroup</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup">TestRSGroupsWithACL</a></span></code>
+<div class="block">Performs authorization checks for rsgroup operations, according to different
+ levels of authorized users.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
 <li class="blockList"><a name="org.apache.hadoop.hbase.security.access">
 <!--   -->
 </a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/security/access/package-use.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/security/access/package-use.html b/testdevapidocs/org/apache/hadoop/hbase/security/access/package-use.html
index 70249f7..a77f43c 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/security/access/package-use.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/security/access/package-use.html
@@ -87,6 +87,10 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.hadoop.hbase.rsgroup">org.apache.hadoop.hbase.rsgroup</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><a href="#org.apache.hadoop.hbase.security.access">org.apache.hadoop.hbase.security.access</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
@@ -116,6 +120,23 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.hadoop.hbase.rsgroup">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../../org/apache/hadoop/hbase/security/access/package-summary.html">org.apache.hadoop.hbase.security.access</a> used by <a href="../../../../../../org/apache/hadoop/hbase/rsgroup/package-summary.html">org.apache.hadoop.hbase.rsgroup</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../../../org/apache/hadoop/hbase/security/access/class-use/SecureTestUtil.html#org.apache.hadoop.hbase.rsgroup">SecureTestUtil</a>
+<div class="block">Utility methods for testing security</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
 <li class="blockList"><a name="org.apache.hadoop.hbase.security.access">
 <!--   -->
 </a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
index 08121f4..339338f 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/test/package-tree.html
@@ -253,10 +253,10 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestWithCellVisibilityLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestWithCellVisibilityLoadAndVerify.Counters</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.Counters.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestLoadAndVerify.Counters</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Generator.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Generator.Counts</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.test.<a href="../../../../../org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.Verify.Counts.html" title="enum in org.apache.hadoop.hbase.test"><span class="typeNameLink">IntegrationTestBigLinkedList.Verify.Counts</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
index c0134a2..f03e3c2 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/wal/package-tree.html
@@ -137,9 +137,9 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/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>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
index 9eb7001..2f7d560 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html
@@ -117,7 +117,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>private static class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.51">TestZKLeaderManager.MockAbortable</a>
+<pre>private static class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.52">TestZKLeaderManager.MockAbortable</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>
 implements org.apache.hadoop.hbase.Abortable</pre>
 </li>
@@ -213,7 +213,7 @@ implements org.apache.hadoop.hbase.Abortable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>aborted</h4>
-<pre>private&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.52">aborted</a></pre>
+<pre>private&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.53">aborted</a></pre>
 </li>
 </ul>
 </li>
@@ -230,7 +230,7 @@ implements org.apache.hadoop.hbase.Abortable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>MockAbortable</h4>
-<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.51">MockAbortable</a>()</pre>
+<pre>private&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.52">MockAbortable</a>()</pre>
 </li>
 </ul>
 </li>
@@ -247,7 +247,7 @@ implements org.apache.hadoop.hbase.Abortable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>abort</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.55">abort</a>(<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>&nbsp;why,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.56">abort</a>(<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>&nbsp;why,
                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;e)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -261,7 +261,7 @@ implements org.apache.hadoop.hbase.Abortable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>isAborted</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.62">isAborted</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockAbortable.html#line.63">isAborted</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>isAborted</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.hbase.Abortable</code></dd>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
index 0f87e51..d5dd9d5 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>private static class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.67">TestZKLeaderManager.MockLeader</a>
+<pre>private static class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.68">TestZKLeaderManager.MockLeader</a>
 extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a>
 implements org.apache.hadoop.hbase.Stoppable</pre>
 </li>
@@ -281,7 +281,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>stopped</h4>
-<pre>private&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.68">stopped</a></pre>
+<pre>private volatile&nbsp;boolean <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.69">stopped</a></pre>
 </li>
 </ul>
 <a name="watcher">
@@ -290,7 +290,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>watcher</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.zookeeper.ZKWatcher <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.69">watcher</a></pre>
+<pre>private&nbsp;org.apache.hadoop.hbase.zookeeper.ZKWatcher <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.70">watcher</a></pre>
 </li>
 </ul>
 <a name="zkLeader">
@@ -299,7 +299,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>zkLeader</h4>
-<pre>private&nbsp;org.apache.hadoop.hbase.zookeeper.ZKLeaderManager <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.70">zkLeader</a></pre>
+<pre>private&nbsp;org.apache.hadoop.hbase.zookeeper.ZKLeaderManager <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.71">zkLeader</a></pre>
 </li>
 </ul>
 <a name="master">
@@ -308,7 +308,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>master</h4>
-<pre>private&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.71">master</a></pre>
+<pre>private&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicBoolean.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicBoolean</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.72">master</a></pre>
 </li>
 </ul>
 <a name="index">
@@ -317,7 +317,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>index</h4>
-<pre>private&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.72">index</a></pre>
+<pre>private&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.73">index</a></pre>
 </li>
 </ul>
 </li>
@@ -334,7 +334,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>MockLeader</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.74">MockLeader</a>(org.apache.hadoop.hbase.zookeeper.ZKWatcher&nbsp;watcher,
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.75">MockLeader</a>(org.apache.hadoop.hbase.zookeeper.ZKWatcher&nbsp;watcher,
                   int&nbsp;index)</pre>
 </li>
 </ul>
@@ -352,7 +352,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>isMaster</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.83">isMaster</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.84">isMaster</a>()</pre>
 </li>
 </ul>
 <a name="getIndex--">
@@ -361,7 +361,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>getIndex</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.87">getIndex</a>()</pre>
+<pre>public&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.88">getIndex</a>()</pre>
 </li>
 </ul>
 <a name="getWatcher--">
@@ -370,7 +370,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>getWatcher</h4>
-<pre>public&nbsp;org.apache.hadoop.hbase.zookeeper.ZKWatcher&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.91">getWatcher</a>()</pre>
+<pre>public&nbsp;org.apache.hadoop.hbase.zookeeper.ZKWatcher&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.92">getWatcher</a>()</pre>
 </li>
 </ul>
 <a name="run--">
@@ -379,7 +379,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>run</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.96">run</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.97">run</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true#run--" title="class or interface in java.lang">run</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></code></dd>
@@ -394,7 +394,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>abdicate</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.110">abdicate</a>()</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.111">abdicate</a>()</pre>
 </li>
 </ul>
 <a name="stop-java.lang.String-">
@@ -403,7 +403,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>stop</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.116">stop</a>(<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>&nbsp;why)</pre>
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.117">stop</a>(<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>&nbsp;why)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>stop</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.hbase.Stoppable</code></dd>
@@ -416,7 +416,7 @@ implements org.apache.hadoop.hbase.Stoppable</pre>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>isStopped</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.123">isStopped</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html#line.125">isStopped</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code>isStopped</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.hbase.Stoppable</code></dd>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
index f65fb34..a62238c 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html
@@ -109,7 +109,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.45">TestZKLeaderManager</a>
+<pre>public class <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.46">TestZKLeaderManager</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>
 </li>
 </ul>
@@ -250,7 +250,7 @@ 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/zookeeper/TestZKLeaderManager.html#line.46">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.47">LOG</a></pre>
 </li>
 </ul>
 <a name="LEADER_ZNODE">
@@ -259,7 +259,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>LEADER_ZNODE</h4>
-<pre>private 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/zookeeper/TestZKLeaderManager.html#line.48">LEADER_ZNODE</a></pre>
+<pre>private 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/zookeeper/TestZKLeaderManager.html#line.49">LEADER_ZNODE</a></pre>
 </li>
 </ul>
 <a name="TEST_UTIL">
@@ -268,7 +268,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>TEST_UTIL</h4>
-<pre>private static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.128">TEST_UTIL</a></pre>
+<pre>private static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/HBaseZKTestingUtility.html" title="class in org.apache.hadoop.hbase">HBaseZKTestingUtility</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.130">TEST_UTIL</a></pre>
 </li>
 </ul>
 <a name="CANDIDATES">
@@ -277,7 +277,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>CANDIDATES</h4>
-<pre>private static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html" title="class in org.apache.hadoop.hbase.zookeeper">TestZKLeaderManager.MockLeader</a>[] <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.129">CANDIDATES</a></pre>
+<pre>private static&nbsp;<a href="../../../../../org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.MockLeader.html" title="class in org.apache.hadoop.hbase.zookeeper">TestZKLeaderManager.MockLeader</a>[] <a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.131">CANDIDATES</a></pre>
 </li>
 </ul>
 </li>
@@ -294,7 +294,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>TestZKLeaderManager</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.45">TestZKLeaderManager</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.46">TestZKLeaderManager</a>()</pre>
 </li>
 </ul>
 </li>
@@ -311,7 +311,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>setupBeforeClass</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.132">setupBeforeClass</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.134">setupBeforeClass</a>()
                              throws <a href="http://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>
@@ -325,7 +325,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>tearDownAfterClass</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.148">tearDownAfterClass</a>()
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.151">tearDownAfterClass</a>()
                                throws <a href="http://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>
@@ -339,7 +339,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>testLeaderSelection</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.153">testLeaderSelection</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/zookeeper/TestZKLeaderManager.html#line.156">testLeaderSelection</a>()
                          throws <a href="http://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>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/testdevapidocs/overview-tree.html
----------------------------------------------------------------------
diff --git a/testdevapidocs/overview-tree.html b/testdevapidocs/overview-tree.html
index 786bcd7..3699324 100644
--- a/testdevapidocs/overview-tree.html
+++ b/testdevapidocs/overview-tree.html
@@ -1953,6 +1953,7 @@
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestCellACLWithMultipleVersions.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestCellACLWithMultipleVersions</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestCoprocessorWhitelistMasterObserver.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestCoprocessorWhitelistMasterObserver</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestNamespaceCommands.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestNamespaceCommands</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsWithACL</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestScanEarlyTermination.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestScanEarlyTermination</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/TestSnapshotWithAcl.html" title="class in org.apache.hadoop.hbase.client"><span class="typeNameLink">TestSnapshotWithAcl</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="org/apache/hadoop/hbase/security/access/TestWithDisabledAuthorization.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">TestWithDisabledAuthorization</span></a></li>
@@ -3251,7 +3252,6 @@
 </ul>
 </li>
 <li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsOfflineMode.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsOfflineMode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.rsgroup.<a href="org/apache/hadoop/hbase/rsgroup/TestRSGroupsWithACL.html" title="class in org.apache.hadoop.hbase.rsgroup"><span class="typeNameLink">TestRSGroupsWithACL</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestRSKilledWhenInitializing.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRSKilledWhenInitializing</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="org/apache/hadoop/hbase/regionserver/TestRSStatusServlet.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TestRSStatusServlet</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="org/apache/hadoop/hbase/master/procedure/TestSafemodeBringsDownMaster.html" title="class in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">TestSafemodeBringsDownMaster</span></a></li>


[08/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/export_control.html
----------------------------------------------------------------------
diff --git a/export_control.html b/export_control.html
index 9eb0165..57ce863 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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Export Control
@@ -336,7 +336,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: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/checkstyle.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/checkstyle.html b/hbase-annotations/checkstyle.html
index e99c45b..78c8777 100644
--- a/hbase-annotations/checkstyle.html
+++ b/hbase-annotations/checkstyle.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -150,7 +150,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/dependencies.html b/hbase-annotations/dependencies.html
index 5de21fc..55b9dae 100644
--- a/hbase-annotations/dependencies.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -272,7 +272,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/dependency-convergence.html b/hbase-annotations/dependency-convergence.html
index cf3d0dc..a541112 100644
--- a/hbase-annotations/dependency-convergence.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/dependency-info.html b/hbase-annotations/dependency-info.html
index 95594c1..ed56c6c 100644
--- a/hbase-annotations/dependency-info.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -147,7 +147,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/dependency-management.html b/hbase-annotations/dependency-management.html
index 54268bc..1684f86 100644
--- a/hbase-annotations/dependency-management.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/index.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/index.html b/hbase-annotations/index.html
index f4734d7..e4919df 100644
--- a/hbase-annotations/index.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/integration.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/integration.html b/hbase-annotations/integration.html
index eac7d68..e2b98fe 100644
--- a/hbase-annotations/integration.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/issue-tracking.html b/hbase-annotations/issue-tracking.html
index 924d530..2ed2ad9 100644
--- a/hbase-annotations/issue-tracking.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/license.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/license.html b/hbase-annotations/license.html
index 138ce89..1ade2d9 100644
--- a/hbase-annotations/license.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/mail-lists.html b/hbase-annotations/mail-lists.html
index b24444c..91d9324 100644
--- a/hbase-annotations/mail-lists.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/plugin-management.html b/hbase-annotations/plugin-management.html
index 6f7ce75..22968db 100644
--- a/hbase-annotations/plugin-management.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/plugins.html b/hbase-annotations/plugins.html
index 8ada069..2adfe83 100644
--- a/hbase-annotations/plugins.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -222,7 +222,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/project-info.html b/hbase-annotations/project-info.html
index c325805..94fdfe8 100644
--- a/hbase-annotations/project-info.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/project-reports.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/project-reports.html b/hbase-annotations/project-reports.html
index b00ce01..0ff0dc7 100644
--- a/hbase-annotations/project-reports.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -128,7 +128,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/project-summary.html b/hbase-annotations/project-summary.html
index 63a0bef..4cfa2cb 100644
--- a/hbase-annotations/project-summary.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -166,7 +166,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/source-repository.html b/hbase-annotations/source-repository.html
index 653a00e..ece27f7 100644
--- a/hbase-annotations/source-repository.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-annotations/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-annotations/team-list.html b/hbase-annotations/team-list.html
index dcfcd37..eb72b29 100644
--- a/hbase-annotations/team-list.html
+++ b/hbase-annotations/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Annotations &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/dependencies.html b/hbase-build-configuration/dependencies.html
index fdb2a41..1a27697 100644
--- a/hbase-build-configuration/dependencies.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -330,7 +330,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/dependency-convergence.html b/hbase-build-configuration/dependency-convergence.html
index 9b569a5..15baa01 100644
--- a/hbase-build-configuration/dependency-convergence.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/dependency-info.html b/hbase-build-configuration/dependency-info.html
index 0b01b3d..348dd92 100644
--- a/hbase-build-configuration/dependency-info.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -148,7 +148,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/dependency-management.html b/hbase-build-configuration/dependency-management.html
index 59f9863..9536655 100644
--- a/hbase-build-configuration/dependency-management.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/dependencies.html b/hbase-build-configuration/hbase-archetypes/dependencies.html
index dbbdb44..5634028 100644
--- a/hbase-build-configuration/hbase-archetypes/dependencies.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -330,7 +330,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/dependency-convergence.html b/hbase-build-configuration/hbase-archetypes/dependency-convergence.html
index 01a2698..8cf33e7 100644
--- a/hbase-build-configuration/hbase-archetypes/dependency-convergence.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/dependency-info.html b/hbase-build-configuration/hbase-archetypes/dependency-info.html
index bcda810..95b764f 100644
--- a/hbase-build-configuration/hbase-archetypes/dependency-info.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -148,7 +148,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/dependency-management.html b/hbase-build-configuration/hbase-archetypes/dependency-management.html
index 4cd8547..2e7a677 100644
--- a/hbase-build-configuration/hbase-archetypes/dependency-management.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependencies.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependencies.html
index 14e76a3..d0fae90 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependencies.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -330,7 +330,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-convergence.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-convergence.html
index 1f7adde..21d1481 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-convergence.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-info.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-info.html
index d9e430a..ba09d9d 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -148,7 +148,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-management.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-management.html
index 206bb0d..a8c74d8 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/dependency-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/index.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/index.html
index a1e1fe6..933726a 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/index.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/integration.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/integration.html
index 655d30f..a832f23 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/integration.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/issue-tracking.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/issue-tracking.html
index 86b253d..9488a62 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/issue-tracking.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/license.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/license.html
index 45d4b49..5d0c71f 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/license.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/mail-lists.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/mail-lists.html
index 367d386..38c007e 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/mail-lists.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugin-management.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugin-management.html
index 295da89..39ae491 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugin-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugins.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugins.html
index b9d9940..a34e32e 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/plugins.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -218,7 +218,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-info.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-info.html
index 04139ee..0ff203b 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-summary.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-summary.html
index 91ec495..b045db6 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/project-summary.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -163,7 +163,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/source-repository.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/source-repository.html
index f620d38..f4c3f4c 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/source-repository.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/team-list.html b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/team-list.html
index 320d20b..fc652c2 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/team-list.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-archetype-builder/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetype builder &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/checkstyle.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/checkstyle.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/checkstyle.html
index b878146..9dd0d95 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/checkstyle.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/checkstyle.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -150,7 +150,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependencies.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependencies.html
index 03308c9..d58f717 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependencies.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -4168,7 +4168,7 @@ The following provides more details on the included cryptographic software:
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-convergence.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-convergence.html
index d2a8c11..18a9f2f 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-convergence.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-info.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-info.html
index 5345976..95c2003 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -147,7 +147,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-management.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-management.html
index 53ae0bb..79797ff 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/dependency-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/index.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/index.html
index 924df83..4d538bd 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/index.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/integration.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/integration.html
index 6ce3bdc..ad08087 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/integration.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/issue-tracking.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/issue-tracking.html
index 5888062..4a7abd0 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/issue-tracking.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/license.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/license.html
index 6aa08b6..ac0dee8 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/license.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/mail-lists.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/mail-lists.html
index 99a671f..ea3b482 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/mail-lists.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugin-management.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugin-management.html
index 6026c1c..d6619fb 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugin-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugins.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugins.html
index 1a3ac00..e74894f 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/plugins.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -226,7 +226,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-info.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-info.html
index b3f632b..6bf8d1f 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-reports.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-reports.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-reports.html
index 3f81f25..9b981ee 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-reports.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -128,7 +128,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-summary.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-summary.html
index e051aa2..efabb33 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/project-summary.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -166,7 +166,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/source-repository.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/source-repository.html
index 4babf62..5ee55cb 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/source-repository.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-client-project/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-client-project/team-list.html b/hbase-build-configuration/hbase-archetypes/hbase-client-project/team-list.html
index dac710b..22026d7 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-client-project/team-list.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-client archetype &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/checkstyle.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/checkstyle.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/checkstyle.html
index 1728077..7ac78f5 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/checkstyle.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/checkstyle.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -150,7 +150,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependencies.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependencies.html
index 9097d29..4178ef2 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependencies.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -4193,7 +4193,7 @@ built on Jackson JSON processor</p>
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-convergence.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-convergence.html
index 85e49f7..4455a82 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-convergence.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-info.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-info.html
index 547bdb7..aac3c81 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -147,7 +147,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-management.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-management.html
index cf60e74..bd1a275 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/dependency-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 


[09/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html
----------------------------------------------------------------------
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html b/devapidocs/src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html
index 6e03479..e568a9a 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html
@@ -71,725 +71,727 @@
 <span class="sourceLineNo">063</span>import org.apache.hadoop.hbase.regionserver.InternalScanner;<a name="line.63"></a>
 <span class="sourceLineNo">064</span>import org.apache.hadoop.hbase.regionserver.Region;<a name="line.64"></a>
 <span class="sourceLineNo">065</span>import org.apache.hadoop.hbase.security.User;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>import org.apache.hbase.thirdparty.com.google.common.collect.ArrayListMultimap;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>import org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.util.Pair;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>import org.apache.hadoop.io.Text;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>import org.apache.hadoop.io.Writable;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>import org.apache.hadoop.io.WritableFactories;<a name="line.73"></a>
-<span class="sourceLineNo">074</span>import org.apache.hadoop.io.WritableUtils;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>import org.slf4j.Logger;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>import org.slf4j.LoggerFactory;<a name="line.77"></a>
-<span class="sourceLineNo">078</span><a name="line.78"></a>
-<span class="sourceLineNo">079</span>/**<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * Maintains lists of permission grants to users and groups to allow for<a name="line.80"></a>
-<span class="sourceLineNo">081</span> * authorization checks by {@link AccessController}.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *<a name="line.82"></a>
-<span class="sourceLineNo">083</span> * &lt;p&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * Access control lists are stored in an "internal" metadata table named<a name="line.84"></a>
-<span class="sourceLineNo">085</span> * {@code _acl_}. Each table's permission grants are stored as a separate row,<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * keyed by the table name. KeyValues for permissions assignments are stored<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * in one of the formats:<a name="line.87"></a>
-<span class="sourceLineNo">088</span> * &lt;pre&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> * Key                      Desc<a name="line.89"></a>
-<span class="sourceLineNo">090</span> * --------                 --------<a name="line.90"></a>
-<span class="sourceLineNo">091</span> * user                     table level permissions for a user [R=read, W=write]<a name="line.91"></a>
-<span class="sourceLineNo">092</span> * group                    table level permissions for a group<a name="line.92"></a>
-<span class="sourceLineNo">093</span> * user,family              column family level permissions for a user<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * group,family             column family level permissions for a group<a name="line.94"></a>
-<span class="sourceLineNo">095</span> * user,family,qualifier    column qualifier level permissions for a user<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * group,family,qualifier   column qualifier level permissions for a group<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/pre&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * All values are encoded as byte arrays containing the codes from the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * org.apache.hadoop.hbase.security.access.TablePermission.Action enum.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * &lt;/p&gt;<a name="line.101"></a>
-<span class="sourceLineNo">102</span> */<a name="line.102"></a>
-<span class="sourceLineNo">103</span>@InterfaceAudience.Private<a name="line.103"></a>
-<span class="sourceLineNo">104</span>public class AccessControlLists {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>  /** Internal storage table for access control lists */<a name="line.105"></a>
-<span class="sourceLineNo">106</span>  public static final TableName ACL_TABLE_NAME =<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      TableName.valueOf(NamespaceDescriptor.SYSTEM_NAMESPACE_NAME_STR, "acl");<a name="line.107"></a>
-<span class="sourceLineNo">108</span>  public static final byte[] ACL_GLOBAL_NAME = ACL_TABLE_NAME.getName();<a name="line.108"></a>
-<span class="sourceLineNo">109</span>  /** Column family used to store ACL grants */<a name="line.109"></a>
-<span class="sourceLineNo">110</span>  public static final String ACL_LIST_FAMILY_STR = "l";<a name="line.110"></a>
-<span class="sourceLineNo">111</span>  public static final byte[] ACL_LIST_FAMILY = Bytes.toBytes(ACL_LIST_FAMILY_STR);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>  /** KV tag to store per cell access control lists */<a name="line.112"></a>
-<span class="sourceLineNo">113</span>  public static final byte ACL_TAG_TYPE = TagType.ACL_TAG_TYPE;<a name="line.113"></a>
-<span class="sourceLineNo">114</span><a name="line.114"></a>
-<span class="sourceLineNo">115</span>  public static final char NAMESPACE_PREFIX = '@';<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span>  /**<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   * Delimiter to separate user, column family, and qualifier in<a name="line.118"></a>
-<span class="sourceLineNo">119</span>   * _acl_ table info: column keys */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>  public static final char ACL_KEY_DELIMITER = ',';<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>  private static final Logger LOG = LoggerFactory.getLogger(AccessControlLists.class);<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>  /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   * Stores a new user permission grant in the access control lists table.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>   * @param conf the configuration<a name="line.126"></a>
-<span class="sourceLineNo">127</span>   * @param userPerm the details of the permission to be granted<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   * @param t acl table instance. It is closed upon method return.<a name="line.128"></a>
-<span class="sourceLineNo">129</span>   * @throws IOException in the case of an error accessing the metadata table<a name="line.129"></a>
-<span class="sourceLineNo">130</span>   */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>  static void addUserPermission(Configuration conf, UserPermission userPerm, Table t,<a name="line.131"></a>
-<span class="sourceLineNo">132</span>                                boolean mergeExistingPermissions) throws IOException {<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    Permission.Action[] actions = userPerm.getActions();<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    byte[] rowKey = userPermissionRowKey(userPerm);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    Put p = new Put(rowKey);<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    byte[] key = userPermissionKey(userPerm);<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>    if ((actions == null) || (actions.length == 0)) {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>      String msg = "No actions associated with user '" + Bytes.toString(userPerm.getUser()) + "'";<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      LOG.warn(msg);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>      throw new IOException(msg);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    }<a name="line.142"></a>
-<span class="sourceLineNo">143</span><a name="line.143"></a>
-<span class="sourceLineNo">144</span>    Set&lt;Permission.Action&gt; actionSet = new TreeSet&lt;Permission.Action&gt;();<a name="line.144"></a>
-<span class="sourceLineNo">145</span>    if(mergeExistingPermissions){<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      List&lt;UserPermission&gt; perms = getUserPermissions(conf, rowKey);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>      UserPermission currentPerm = null;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      for (UserPermission perm : perms) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>        if (Bytes.equals(perm.getUser(), userPerm.getUser())<a name="line.149"></a>
-<span class="sourceLineNo">150</span>                &amp;&amp; ((userPerm.isGlobal() &amp;&amp; ACL_TABLE_NAME.equals(perm.getTableName()))<a name="line.150"></a>
-<span class="sourceLineNo">151</span>                || perm.tableFieldsEqual(userPerm))) {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>          currentPerm = perm;<a name="line.152"></a>
-<span class="sourceLineNo">153</span>          break;<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><a name="line.156"></a>
-<span class="sourceLineNo">157</span>      if(currentPerm != null &amp;&amp; currentPerm.getActions() != null){<a name="line.157"></a>
-<span class="sourceLineNo">158</span>        actionSet.addAll(Arrays.asList(currentPerm.getActions()));<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><a name="line.161"></a>
-<span class="sourceLineNo">162</span>    // merge current action with new action.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    actionSet.addAll(Arrays.asList(actions));<a name="line.163"></a>
-<span class="sourceLineNo">164</span><a name="line.164"></a>
-<span class="sourceLineNo">165</span>    // serialize to byte array.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    byte[] value = new byte[actionSet.size()];<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    int index = 0;<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    for (Permission.Action action : actionSet) {<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      value[index++] = action.code();<a name="line.169"></a>
-<span class="sourceLineNo">170</span>    }<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    p.add(CellBuilderFactory.create(CellBuilderType.SHALLOW_COPY)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>        .setRow(p.getRow())<a name="line.172"></a>
-<span class="sourceLineNo">173</span>        .setFamily(ACL_LIST_FAMILY)<a name="line.173"></a>
-<span class="sourceLineNo">174</span>        .setQualifier(key)<a name="line.174"></a>
-<span class="sourceLineNo">175</span>        .setTimestamp(p.getTimeStamp())<a name="line.175"></a>
-<span class="sourceLineNo">176</span>        .setType(Type.Put)<a name="line.176"></a>
-<span class="sourceLineNo">177</span>        .setValue(value)<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        .build());<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    if (LOG.isDebugEnabled()) {<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      LOG.debug("Writing permission with rowKey "+<a name="line.180"></a>
-<span class="sourceLineNo">181</span>          Bytes.toString(rowKey)+" "+<a name="line.181"></a>
-<span class="sourceLineNo">182</span>          Bytes.toString(key)+": "+Bytes.toStringBinary(value)<a name="line.182"></a>
-<span class="sourceLineNo">183</span>          );<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    }<a name="line.184"></a>
-<span class="sourceLineNo">185</span>    try {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
-<span class="sourceLineNo">187</span>       * TODO: Use Table.put(Put) instead. This Table.put() happens within the RS. We are already in<a name="line.187"></a>
-<span class="sourceLineNo">188</span>       * AccessController. Means already there was an RPC happened to server (Actual grant call from<a name="line.188"></a>
-<span class="sourceLineNo">189</span>       * client side). At RpcServer we have a ThreadLocal where we keep the CallContext and inside<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * that the current RPC called user info is set. The table on which put was called is created<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       * via the RegionCP env and that uses a special Connection. The normal RPC channel will be by<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * passed here means there would have no further contact on to the RpcServer. So the<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       * ThreadLocal is never getting reset. We ran the new put as a super user (User.runAsLoginUser<a name="line.193"></a>
-<span class="sourceLineNo">194</span>       * where the login user is the user who started RS process) but still as per the RPC context<a name="line.194"></a>
-<span class="sourceLineNo">195</span>       * it is the old user. When AsyncProcess was used, the execute happen via another thread from<a name="line.195"></a>
-<span class="sourceLineNo">196</span>       * pool and so old ThreadLocal variable is not accessible and so it looks as if no Rpc context<a name="line.196"></a>
-<span class="sourceLineNo">197</span>       * and we were relying on the super user who starts the RS process.<a name="line.197"></a>
-<span class="sourceLineNo">198</span>       */<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      t.put(Collections.singletonList(p));<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    } finally {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      t.close();<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    }<a name="line.202"></a>
-<span class="sourceLineNo">203</span>  }<a name="line.203"></a>
-<span class="sourceLineNo">204</span><a name="line.204"></a>
-<span class="sourceLineNo">205</span>  static void addUserPermission(Configuration conf, UserPermission userPerm, Table t)<a name="line.205"></a>
-<span class="sourceLineNo">206</span>          throws IOException{<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    addUserPermission(conf, userPerm, t, false);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>  }<a name="line.208"></a>
-<span class="sourceLineNo">209</span><a name="line.209"></a>
-<span class="sourceLineNo">210</span>  /**<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   * Removes a previously granted permission from the stored access control<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   * lists.  The {@link TablePermission} being removed must exactly match what<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   * is stored -- no wildcard matching is attempted.  Ie, if user "bob" has<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   * been granted "READ" access to the "data" table, but only to column family<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   * plus qualifier "info:colA", then trying to call this method with only<a name="line.215"></a>
-<span class="sourceLineNo">216</span>   * user "bob" and the table name "data" (but without specifying the<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   * column qualifier "info:colA") will have no effect.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>   * @param conf the configuration<a name="line.219"></a>
-<span class="sourceLineNo">220</span>   * @param userPerm the details of the permission to be revoked<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   * @param t acl table<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   * @throws IOException if there is an error accessing the metadata table<a name="line.222"></a>
-<span class="sourceLineNo">223</span>   */<a name="line.223"></a>
-<span class="sourceLineNo">224</span>  static void removeUserPermission(Configuration conf, UserPermission userPerm, Table t)<a name="line.224"></a>
-<span class="sourceLineNo">225</span>      throws IOException {<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    if (null == userPerm.getActions()) {<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      removePermissionRecord(conf, userPerm, t);<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    } else {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      // Get all the global user permissions from the acl table<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      List&lt;UserPermission&gt; permsList = getUserPermissions(conf, userPermissionRowKey(userPerm));<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      List&lt;Permission.Action&gt; remainingActions = new ArrayList&lt;&gt;();<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      List&lt;Permission.Action&gt; dropActions = Arrays.asList(userPerm.getActions());<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      for (UserPermission perm : permsList) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>        // Find the user and remove only the requested permissions<a name="line.234"></a>
-<span class="sourceLineNo">235</span>        if (Bytes.toString(perm.getUser()).equals(Bytes.toString(userPerm.getUser()))) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>          for (Permission.Action oldAction : perm.getActions()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>            if (!dropActions.contains(oldAction)) {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>              remainingActions.add(oldAction);<a name="line.238"></a>
-<span class="sourceLineNo">239</span>            }<a name="line.239"></a>
-<span class="sourceLineNo">240</span>          }<a name="line.240"></a>
-<span class="sourceLineNo">241</span>          if (!remainingActions.isEmpty()) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>            perm.setActions(remainingActions.toArray(new Permission.Action[remainingActions.size()]));<a name="line.242"></a>
-<span class="sourceLineNo">243</span>            addUserPermission(conf, perm, t);<a name="line.243"></a>
-<span class="sourceLineNo">244</span>          } else {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>            removePermissionRecord(conf, userPerm, t);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>          }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>          break;<a name="line.247"></a>
-<span class="sourceLineNo">248</span>        }<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>    if (LOG.isDebugEnabled()) {<a name="line.251"></a>
-<span class="sourceLineNo">252</span>      LOG.debug("Removed permission "+ userPerm.toString());<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    }<a name="line.253"></a>
-<span class="sourceLineNo">254</span>  }<a name="line.254"></a>
-<span class="sourceLineNo">255</span><a name="line.255"></a>
-<span class="sourceLineNo">256</span>  private static void removePermissionRecord(Configuration conf, UserPermission userPerm, Table t)<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      throws IOException {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    Delete d = new Delete(userPermissionRowKey(userPerm));<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    d.addColumns(ACL_LIST_FAMILY, userPermissionKey(userPerm));<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    try {<a name="line.260"></a>
-<span class="sourceLineNo">261</span>      t.delete(d);<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    } finally {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      t.close();<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    }<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /**<a name="line.267"></a>
-<span class="sourceLineNo">268</span>   * Remove specified table from the _acl_ table.<a name="line.268"></a>
-<span class="sourceLineNo">269</span>   */<a name="line.269"></a>
-<span class="sourceLineNo">270</span>  static void removeTablePermissions(Configuration conf, TableName tableName, Table t)<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      throws IOException{<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    Delete d = new Delete(tableName.getName());<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>    if (LOG.isDebugEnabled()) {<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      LOG.debug("Removing permissions of removed table "+ tableName);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    }<a name="line.276"></a>
-<span class="sourceLineNo">277</span>    try {<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      t.delete(d);<a name="line.278"></a>
-<span class="sourceLineNo">279</span>    } finally {<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      t.close();<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    }<a name="line.281"></a>
-<span class="sourceLineNo">282</span>  }<a name="line.282"></a>
-<span class="sourceLineNo">283</span><a name="line.283"></a>
-<span class="sourceLineNo">284</span>  /**<a name="line.284"></a>
-<span class="sourceLineNo">285</span>   * Remove specified namespace from the acl table.<a name="line.285"></a>
-<span class="sourceLineNo">286</span>   */<a name="line.286"></a>
-<span class="sourceLineNo">287</span>  static void removeNamespacePermissions(Configuration conf, String namespace, Table t)<a name="line.287"></a>
-<span class="sourceLineNo">288</span>      throws IOException{<a name="line.288"></a>
-<span class="sourceLineNo">289</span>    Delete d = new Delete(Bytes.toBytes(toNamespaceEntry(namespace)));<a name="line.289"></a>
-<span class="sourceLineNo">290</span><a name="line.290"></a>
-<span class="sourceLineNo">291</span>    if (LOG.isDebugEnabled()) {<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      LOG.debug("Removing permissions of removed namespace "+ namespace);<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>
-<span class="sourceLineNo">295</span>    try {<a name="line.295"></a>
-<span class="sourceLineNo">296</span>      t.delete(d);<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    } finally {<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      t.close();<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    }<a name="line.299"></a>
-<span class="sourceLineNo">300</span>  }<a name="line.300"></a>
-<span class="sourceLineNo">301</span><a name="line.301"></a>
-<span class="sourceLineNo">302</span>  static private void removeTablePermissions(TableName tableName, byte[] column, Table table,<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      boolean closeTable) throws IOException {<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    Scan scan = new Scan();<a name="line.304"></a>
-<span class="sourceLineNo">305</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.305"></a>
-<span class="sourceLineNo">306</span><a name="line.306"></a>
-<span class="sourceLineNo">307</span>    String columnName = Bytes.toString(column);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    scan.setFilter(new QualifierFilter(CompareOperator.EQUAL, new RegexStringComparator(<a name="line.308"></a>
-<span class="sourceLineNo">309</span>        String.format("(%s%s%s)|(%s%s)$",<a name="line.309"></a>
-<span class="sourceLineNo">310</span>            ACL_KEY_DELIMITER, columnName, ACL_KEY_DELIMITER,<a name="line.310"></a>
-<span class="sourceLineNo">311</span>            ACL_KEY_DELIMITER, columnName))));<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>    Set&lt;byte[]&gt; qualifierSet = new TreeSet&lt;&gt;(Bytes.BYTES_COMPARATOR);<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    ResultScanner scanner = null;<a name="line.314"></a>
-<span class="sourceLineNo">315</span>    try {<a name="line.315"></a>
-<span class="sourceLineNo">316</span>      scanner = table.getScanner(scan);<a name="line.316"></a>
-<span class="sourceLineNo">317</span>      for (Result res : scanner) {<a name="line.317"></a>
-<span class="sourceLineNo">318</span>        for (byte[] q : res.getFamilyMap(ACL_LIST_FAMILY).navigableKeySet()) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>          qualifierSet.add(q);<a name="line.319"></a>
-<span class="sourceLineNo">320</span>        }<a name="line.320"></a>
-<span class="sourceLineNo">321</span>      }<a name="line.321"></a>
-<span class="sourceLineNo">322</span><a name="line.322"></a>
-<span class="sourceLineNo">323</span>      if (qualifierSet.size() &gt; 0) {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>        Delete d = new Delete(tableName.getName());<a name="line.324"></a>
-<span class="sourceLineNo">325</span>        for (byte[] qualifier : qualifierSet) {<a name="line.325"></a>
-<span class="sourceLineNo">326</span>          d.addColumns(ACL_LIST_FAMILY, qualifier);<a name="line.326"></a>
-<span class="sourceLineNo">327</span>        }<a name="line.327"></a>
-<span class="sourceLineNo">328</span>        table.delete(d);<a name="line.328"></a>
-<span class="sourceLineNo">329</span>      }<a name="line.329"></a>
-<span class="sourceLineNo">330</span>    } finally {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      if (scanner != null) scanner.close();<a name="line.331"></a>
-<span class="sourceLineNo">332</span>      if (closeTable) table.close();<a name="line.332"></a>
-<span class="sourceLineNo">333</span>    }<a name="line.333"></a>
-<span class="sourceLineNo">334</span>  }<a name="line.334"></a>
-<span class="sourceLineNo">335</span><a name="line.335"></a>
-<span class="sourceLineNo">336</span>  /**<a name="line.336"></a>
-<span class="sourceLineNo">337</span>   * Remove specified table column from the acl table.<a name="line.337"></a>
-<span class="sourceLineNo">338</span>   */<a name="line.338"></a>
-<span class="sourceLineNo">339</span>  static void removeTablePermissions(Configuration conf, TableName tableName, byte[] column,<a name="line.339"></a>
-<span class="sourceLineNo">340</span>      Table t) throws IOException {<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    if (LOG.isDebugEnabled()) {<a name="line.341"></a>
-<span class="sourceLineNo">342</span>      LOG.debug("Removing permissions of removed column " + Bytes.toString(column) +<a name="line.342"></a>
-<span class="sourceLineNo">343</span>          " from table "+ tableName);<a name="line.343"></a>
-<span class="sourceLineNo">344</span>    }<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    removeTablePermissions(tableName, column, t, true);<a name="line.345"></a>
-<span class="sourceLineNo">346</span>  }<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>  static byte[] userPermissionRowKey(UserPermission userPerm) {<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    byte[] row;<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    if(userPerm.hasNamespace()) {<a name="line.350"></a>
-<span class="sourceLineNo">351</span>      row = Bytes.toBytes(toNamespaceEntry(userPerm.getNamespace()));<a name="line.351"></a>
-<span class="sourceLineNo">352</span>    } else if(userPerm.isGlobal()) {<a name="line.352"></a>
-<span class="sourceLineNo">353</span>      row = ACL_GLOBAL_NAME;<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    } else {<a name="line.354"></a>
-<span class="sourceLineNo">355</span>      row = userPerm.getTableName().getName();<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    }<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    return row;<a name="line.357"></a>
-<span class="sourceLineNo">358</span>  }<a name="line.358"></a>
-<span class="sourceLineNo">359</span><a name="line.359"></a>
-<span class="sourceLineNo">360</span>  /**<a name="line.360"></a>
-<span class="sourceLineNo">361</span>   * Build qualifier key from user permission:<a name="line.361"></a>
-<span class="sourceLineNo">362</span>   *  username<a name="line.362"></a>
-<span class="sourceLineNo">363</span>   *  username,family<a name="line.363"></a>
-<span class="sourceLineNo">364</span>   *  username,family,qualifier<a name="line.364"></a>
-<span class="sourceLineNo">365</span>   */<a name="line.365"></a>
-<span class="sourceLineNo">366</span>  static byte[] userPermissionKey(UserPermission userPerm) {<a name="line.366"></a>
-<span class="sourceLineNo">367</span>    byte[] qualifier = userPerm.getQualifier();<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    byte[] family = userPerm.getFamily();<a name="line.368"></a>
-<span class="sourceLineNo">369</span>    byte[] key = userPerm.getUser();<a name="line.369"></a>
-<span class="sourceLineNo">370</span><a name="line.370"></a>
-<span class="sourceLineNo">371</span>    if (family != null &amp;&amp; family.length &gt; 0) {<a name="line.371"></a>
-<span class="sourceLineNo">372</span>      key = Bytes.add(key, Bytes.add(new byte[]{ACL_KEY_DELIMITER}, family));<a name="line.372"></a>
-<span class="sourceLineNo">373</span>      if (qualifier != null &amp;&amp; qualifier.length &gt; 0) {<a name="line.373"></a>
-<span class="sourceLineNo">374</span>        key = Bytes.add(key, Bytes.add(new byte[]{ACL_KEY_DELIMITER}, qualifier));<a name="line.374"></a>
-<span class="sourceLineNo">375</span>      }<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    }<a name="line.376"></a>
-<span class="sourceLineNo">377</span><a name="line.377"></a>
-<span class="sourceLineNo">378</span>    return key;<a name="line.378"></a>
-<span class="sourceLineNo">379</span>  }<a name="line.379"></a>
-<span class="sourceLineNo">380</span><a name="line.380"></a>
-<span class="sourceLineNo">381</span>  /**<a name="line.381"></a>
-<span class="sourceLineNo">382</span>   * Returns {@code true} if the given region is part of the {@code _acl_}<a name="line.382"></a>
-<span class="sourceLineNo">383</span>   * metadata table.<a name="line.383"></a>
-<span class="sourceLineNo">384</span>   */<a name="line.384"></a>
-<span class="sourceLineNo">385</span>  static boolean isAclRegion(Region region) {<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    return ACL_TABLE_NAME.equals(region.getTableDescriptor().getTableName());<a name="line.386"></a>
-<span class="sourceLineNo">387</span>  }<a name="line.387"></a>
-<span class="sourceLineNo">388</span><a name="line.388"></a>
-<span class="sourceLineNo">389</span>  /**<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   * Returns {@code true} if the given table is {@code _acl_} metadata table.<a name="line.390"></a>
-<span class="sourceLineNo">391</span>   */<a name="line.391"></a>
-<span class="sourceLineNo">392</span>  static boolean isAclTable(TableDescriptor desc) {<a name="line.392"></a>
-<span class="sourceLineNo">393</span>    return ACL_TABLE_NAME.equals(desc.getTableName());<a name="line.393"></a>
-<span class="sourceLineNo">394</span>  }<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>  /**<a name="line.396"></a>
-<span class="sourceLineNo">397</span>   * Loads all of the permission grants stored in a region of the {@code _acl_}<a name="line.397"></a>
-<span class="sourceLineNo">398</span>   * table.<a name="line.398"></a>
-<span class="sourceLineNo">399</span>   *<a name="line.399"></a>
-<span class="sourceLineNo">400</span>   * @param aclRegion<a name="line.400"></a>
-<span class="sourceLineNo">401</span>   * @return a map of the permissions for this table.<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   * @throws IOException<a name="line.402"></a>
-<span class="sourceLineNo">403</span>   */<a name="line.403"></a>
-<span class="sourceLineNo">404</span>  static Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; loadAll(Region aclRegion)<a name="line.404"></a>
-<span class="sourceLineNo">405</span>      throws IOException {<a name="line.405"></a>
-<span class="sourceLineNo">406</span><a name="line.406"></a>
-<span class="sourceLineNo">407</span>    if (!isAclRegion(aclRegion)) {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>      throw new IOException("Can only load permissions from "+ACL_TABLE_NAME);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    }<a name="line.409"></a>
-<span class="sourceLineNo">410</span><a name="line.410"></a>
-<span class="sourceLineNo">411</span>    Map&lt;byte[], ListMultimap&lt;String, TablePermission&gt;&gt; allPerms = new TreeMap&lt;&gt;(Bytes.BYTES_RAWCOMPARATOR);<a name="line.411"></a>
-<span class="sourceLineNo">412</span><a name="line.412"></a>
-<span class="sourceLineNo">413</span>    // do a full scan of _acl_ table<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>    Scan scan = new Scan();<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.416"></a>
-<span class="sourceLineNo">417</span><a name="line.417"></a>
-<span class="sourceLineNo">418</span>    InternalScanner iScanner = null;<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    try {<a name="line.419"></a>
-<span class="sourceLineNo">420</span>      iScanner = aclRegion.getScanner(scan);<a name="line.420"></a>
-<span class="sourceLineNo">421</span><a name="line.421"></a>
-<span class="sourceLineNo">422</span>      while (true) {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>        List&lt;Cell&gt; row = new ArrayList&lt;&gt;();<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>        boolean hasNext = iScanner.next(row);<a name="line.425"></a>
-<span class="sourceLineNo">426</span>        ListMultimap&lt;String,TablePermission&gt; perms = ArrayListMultimap.create();<a name="line.426"></a>
-<span class="sourceLineNo">427</span>        byte[] entry = null;<a name="line.427"></a>
-<span class="sourceLineNo">428</span>        for (Cell kv : row) {<a name="line.428"></a>
-<span class="sourceLineNo">429</span>          if (entry == null) {<a name="line.429"></a>
-<span class="sourceLineNo">430</span>            entry = CellUtil.cloneRow(kv);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>          }<a name="line.431"></a>
-<span class="sourceLineNo">432</span>          Pair&lt;String,TablePermission&gt; permissionsOfUserOnTable =<a name="line.432"></a>
-<span class="sourceLineNo">433</span>              parsePermissionRecord(entry, kv);<a name="line.433"></a>
-<span class="sourceLineNo">434</span>          if (permissionsOfUserOnTable != null) {<a name="line.434"></a>
-<span class="sourceLineNo">435</span>            String username = permissionsOfUserOnTable.getFirst();<a name="line.435"></a>
-<span class="sourceLineNo">436</span>            TablePermission permissions = permissionsOfUserOnTable.getSecond();<a name="line.436"></a>
-<span class="sourceLineNo">437</span>            perms.put(username, permissions);<a name="line.437"></a>
-<span class="sourceLineNo">438</span>          }<a name="line.438"></a>
-<span class="sourceLineNo">439</span>        }<a name="line.439"></a>
-<span class="sourceLineNo">440</span>        if (entry != null) {<a name="line.440"></a>
-<span class="sourceLineNo">441</span>          allPerms.put(entry, perms);<a name="line.441"></a>
-<span class="sourceLineNo">442</span>        }<a name="line.442"></a>
-<span class="sourceLineNo">443</span>        if (!hasNext) {<a name="line.443"></a>
-<span class="sourceLineNo">444</span>          break;<a name="line.444"></a>
-<span class="sourceLineNo">445</span>        }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>      }<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    } finally {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      if (iScanner != null) {<a name="line.448"></a>
-<span class="sourceLineNo">449</span>        iScanner.close();<a name="line.449"></a>
-<span class="sourceLineNo">450</span>      }<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    }<a name="line.451"></a>
-<span class="sourceLineNo">452</span><a name="line.452"></a>
-<span class="sourceLineNo">453</span>    return allPerms;<a name="line.453"></a>
-<span class="sourceLineNo">454</span>  }<a name="line.454"></a>
-<span class="sourceLineNo">455</span><a name="line.455"></a>
-<span class="sourceLineNo">456</span>  /**<a name="line.456"></a>
-<span class="sourceLineNo">457</span>   * Load all permissions from the region server holding {@code _acl_},<a name="line.457"></a>
-<span class="sourceLineNo">458</span>   * primarily intended for testing purposes.<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   */<a name="line.459"></a>
-<span class="sourceLineNo">460</span>  static Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; loadAll(<a name="line.460"></a>
-<span class="sourceLineNo">461</span>      Configuration conf) throws IOException {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>    Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; allPerms = new TreeMap&lt;&gt;(Bytes.BYTES_RAWCOMPARATOR);<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span>    // do a full scan of _acl_, filtering on only first table region rows<a name="line.464"></a>
-<span class="sourceLineNo">465</span><a name="line.465"></a>
-<span class="sourceLineNo">466</span>    Scan scan = new Scan();<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.467"></a>
-<span class="sourceLineNo">468</span><a name="line.468"></a>
-<span class="sourceLineNo">469</span>    ResultScanner scanner = null;<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    // TODO: Pass in a Connection rather than create one each time.<a name="line.470"></a>
-<span class="sourceLineNo">471</span>    try (Connection connection = ConnectionFactory.createConnection(conf)) {<a name="line.471"></a>
-<span class="sourceLineNo">472</span>      try (Table table = connection.getTable(ACL_TABLE_NAME)) {<a name="line.472"></a>
-<span class="sourceLineNo">473</span>        scanner = table.getScanner(scan);<a name="line.473"></a>
-<span class="sourceLineNo">474</span>        try {<a name="line.474"></a>
-<span class="sourceLineNo">475</span>          for (Result row : scanner) {<a name="line.475"></a>
-<span class="sourceLineNo">476</span>            ListMultimap&lt;String,TablePermission&gt; resultPerms = parsePermissions(row.getRow(), row);<a name="line.476"></a>
-<span class="sourceLineNo">477</span>            allPerms.put(row.getRow(), resultPerms);<a name="line.477"></a>
-<span class="sourceLineNo">478</span>          }<a name="line.478"></a>
-<span class="sourceLineNo">479</span>        } finally {<a name="line.479"></a>
-<span class="sourceLineNo">480</span>          if (scanner != null) scanner.close();<a name="line.480"></a>
-<span class="sourceLineNo">481</span>        }<a name="line.481"></a>
-<span class="sourceLineNo">482</span>      }<a name="line.482"></a>
-<span class="sourceLineNo">483</span>    }<a name="line.483"></a>
-<span class="sourceLineNo">484</span><a name="line.484"></a>
-<span class="sourceLineNo">485</span>    return allPerms;<a name="line.485"></a>
-<span class="sourceLineNo">486</span>  }<a name="line.486"></a>
-<span class="sourceLineNo">487</span><a name="line.487"></a>
-<span class="sourceLineNo">488</span>  public static ListMultimap&lt;String, TablePermission&gt; getTablePermissions(Configuration conf,<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      TableName tableName) throws IOException {<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    return getPermissions(conf, tableName != null ? tableName.getName() : null, null);<a name="line.490"></a>
-<span class="sourceLineNo">491</span>  }<a name="line.491"></a>
-<span class="sourceLineNo">492</span><a name="line.492"></a>
-<span class="sourceLineNo">493</span>  public static ListMultimap&lt;String, TablePermission&gt; getNamespacePermissions(Configuration conf,<a name="line.493"></a>
-<span class="sourceLineNo">494</span>      String namespace) throws IOException {<a name="line.494"></a>
-<span class="sourceLineNo">495</span>    return getPermissions(conf, Bytes.toBytes(toNamespaceEntry(namespace)), null);<a name="line.495"></a>
-<span class="sourceLineNo">496</span>  }<a name="line.496"></a>
-<span class="sourceLineNo">497</span><a name="line.497"></a>
-<span class="sourceLineNo">498</span>  /**<a name="line.498"></a>
-<span class="sourceLineNo">499</span>   * Reads user permission assignments stored in the &lt;code&gt;l:&lt;/code&gt; column<a name="line.499"></a>
-<span class="sourceLineNo">500</span>   * family of the first table row in &lt;code&gt;_acl_&lt;/code&gt;.<a name="line.500"></a>
-<span class="sourceLineNo">501</span>   *<a name="line.501"></a>
-<span class="sourceLineNo">502</span>   * &lt;p&gt;<a name="line.502"></a>
-<span class="sourceLineNo">503</span>   * See {@link AccessControlLists class documentation} for the key structure<a name="line.503"></a>
-<span class="sourceLineNo">504</span>   * used for storage.<a name="line.504"></a>
-<span class="sourceLineNo">505</span>   * &lt;/p&gt;<a name="line.505"></a>
-<span class="sourceLineNo">506</span>   */<a name="line.506"></a>
-<span class="sourceLineNo">507</span>  static ListMultimap&lt;String, TablePermission&gt; getPermissions(Configuration conf,<a name="line.507"></a>
-<span class="sourceLineNo">508</span>      byte[] entryName, Table t) throws IOException {<a name="line.508"></a>
-<span class="sourceLineNo">509</span>    if (entryName == null) entryName = ACL_GLOBAL_NAME;<a name="line.509"></a>
-<span class="sourceLineNo">510</span><a name="line.510"></a>
-<span class="sourceLineNo">511</span>    // for normal user tables, we just read the table row from _acl_<a name="line.511"></a>
-<span class="sourceLineNo">512</span>    ListMultimap&lt;String, TablePermission&gt; perms = ArrayListMultimap.create();<a name="line.512"></a>
-<span class="sourceLineNo">513</span>    Get get = new Get(entryName);<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    get.addFamily(ACL_LIST_FAMILY);<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    Result row = null;<a name="line.515"></a>
-<span class="sourceLineNo">516</span>    if (t == null) {<a name="line.516"></a>
-<span class="sourceLineNo">517</span>      try (Connection connection = ConnectionFactory.createConnection(conf)) {<a name="line.517"></a>
-<span class="sourceLineNo">518</span>        try (Table table = connection.getTable(ACL_TABLE_NAME)) {<a name="line.518"></a>
-<span class="sourceLineNo">519</span>          row = table.get(get);<a name="line.519"></a>
-<span class="sourceLineNo">520</span>        }<a name="line.520"></a>
-<span class="sourceLineNo">521</span>      }<a name="line.521"></a>
-<span class="sourceLineNo">522</span>    } else {<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      row = t.get(get);<a name="line.523"></a>
-<span class="sourceLineNo">524</span>    }<a name="line.524"></a>
-<span class="sourceLineNo">525</span>    if (!row.isEmpty()) {<a name="line.525"></a>
-<span class="sourceLineNo">526</span>      perms = parsePermissions(entryName, row);<a name="line.526"></a>
-<span class="sourceLineNo">527</span>    } else {<a name="line.527"></a>
-<span class="sourceLineNo">528</span>      LOG.info("No permissions found in " + ACL_TABLE_NAME + " for acl entry "<a name="line.528"></a>
-<span class="sourceLineNo">529</span>          + Bytes.toString(entryName));<a name="line.529"></a>
-<span class="sourceLineNo">530</span>    }<a name="line.530"></a>
-<span class="sourceLineNo">531</span><a name="line.531"></a>
-<span class="sourceLineNo">532</span>    return perms;<a name="line.532"></a>
-<span class="sourceLineNo">533</span>  }<a name="line.533"></a>
-<span class="sourceLineNo">534</span><a name="line.534"></a>
-<span class="sourceLineNo">535</span>  /**<a name="line.535"></a>
-<span class="sourceLineNo">536</span>   * Returns the currently granted permissions for a given table as a list of<a name="line.536"></a>
-<span class="sourceLineNo">537</span>   * user plus associated permissions.<a name="line.537"></a>
-<span class="sourceLineNo">538</span>   */<a name="line.538"></a>
-<span class="sourceLineNo">539</span>  static List&lt;UserPermission&gt; getUserTablePermissions(<a name="line.539"></a>
-<span class="sourceLineNo">540</span>      Configuration conf, TableName tableName) throws IOException {<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    return getUserPermissions(conf, tableName == null ? null : tableName.getName());<a name="line.541"></a>
-<span class="sourceLineNo">542</span>  }<a name="line.542"></a>
-<span class="sourceLineNo">543</span><a name="line.543"></a>
-<span class="sourceLineNo">544</span>  static List&lt;UserPermission&gt; getUserNamespacePermissions(<a name="line.544"></a>
-<span class="sourceLineNo">545</span>      Configuration conf, String namespace) throws IOException {<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    return getUserPermissions(conf, Bytes.toBytes(toNamespaceEntry(namespace)));<a name="line.546"></a>
-<span class="sourceLineNo">547</span>  }<a name="line.547"></a>
-<span class="sourceLineNo">548</span><a name="line.548"></a>
-<span class="sourceLineNo">549</span>  static List&lt;UserPermission&gt; getUserPermissions(<a name="line.549"></a>
-<span class="sourceLineNo">550</span>      Configuration conf, byte[] entryName)<a name="line.550"></a>
-<span class="sourceLineNo">551</span>          throws IOException {<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    ListMultimap&lt;String,TablePermission&gt; allPerms = getPermissions(<a name="line.552"></a>
-<span class="sourceLineNo">553</span>        conf, entryName, null);<a name="line.553"></a>
-<span class="sourceLineNo">554</span><a name="line.554"></a>
-<span class="sourceLineNo">555</span>    List&lt;UserPermission&gt; perms = new ArrayList&lt;&gt;();<a name="line.555"></a>
+<span class="sourceLineNo">066</span>import org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>import org.apache.hbase.thirdparty.com.google.common.collect.ArrayListMultimap;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>import org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>import org.apache.hbase.thirdparty.com.google.common.collect.Lists;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>import org.apache.hadoop.hbase.util.Bytes;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>import org.apache.hadoop.hbase.util.Pair;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>import org.apache.hadoop.io.Text;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>import org.apache.hadoop.io.Writable;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>import org.apache.hadoop.io.WritableFactories;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>import org.apache.hadoop.io.WritableUtils;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>import org.apache.yetus.audience.InterfaceAudience;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>import org.slf4j.Logger;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>import org.slf4j.LoggerFactory;<a name="line.78"></a>
+<span class="sourceLineNo">079</span><a name="line.79"></a>
+<span class="sourceLineNo">080</span>/**<a name="line.80"></a>
+<span class="sourceLineNo">081</span> * Maintains lists of permission grants to users and groups to allow for<a name="line.81"></a>
+<span class="sourceLineNo">082</span> * authorization checks by {@link AccessController}.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *<a name="line.83"></a>
+<span class="sourceLineNo">084</span> * &lt;p&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * Access control lists are stored in an "internal" metadata table named<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * {@code _acl_}. Each table's permission grants are stored as a separate row,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> * keyed by the table name. KeyValues for permissions assignments are stored<a name="line.87"></a>
+<span class="sourceLineNo">088</span> * in one of the formats:<a name="line.88"></a>
+<span class="sourceLineNo">089</span> * &lt;pre&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> * Key                      Desc<a name="line.90"></a>
+<span class="sourceLineNo">091</span> * --------                 --------<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * user                     table level permissions for a user [R=read, W=write]<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * group                    table level permissions for a group<a name="line.93"></a>
+<span class="sourceLineNo">094</span> * user,family              column family level permissions for a user<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * group,family             column family level permissions for a group<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * user,family,qualifier    column qualifier level permissions for a user<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * group,family,qualifier   column qualifier level permissions for a group<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/pre&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * All values are encoded as byte arrays containing the codes from the<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * org.apache.hadoop.hbase.security.access.TablePermission.Action enum.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> * &lt;/p&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span> */<a name="line.103"></a>
+<span class="sourceLineNo">104</span>@InterfaceAudience.Private<a name="line.104"></a>
+<span class="sourceLineNo">105</span>public class AccessControlLists {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>  /** Internal storage table for access control lists */<a name="line.106"></a>
+<span class="sourceLineNo">107</span>  public static final TableName ACL_TABLE_NAME =<a name="line.107"></a>
+<span class="sourceLineNo">108</span>      TableName.valueOf(NamespaceDescriptor.SYSTEM_NAMESPACE_NAME_STR, "acl");<a name="line.108"></a>
+<span class="sourceLineNo">109</span>  public static final byte[] ACL_GLOBAL_NAME = ACL_TABLE_NAME.getName();<a name="line.109"></a>
+<span class="sourceLineNo">110</span>  /** Column family used to store ACL grants */<a name="line.110"></a>
+<span class="sourceLineNo">111</span>  public static final String ACL_LIST_FAMILY_STR = "l";<a name="line.111"></a>
+<span class="sourceLineNo">112</span>  public static final byte[] ACL_LIST_FAMILY = Bytes.toBytes(ACL_LIST_FAMILY_STR);<a name="line.112"></a>
+<span class="sourceLineNo">113</span>  /** KV tag to store per cell access control lists */<a name="line.113"></a>
+<span class="sourceLineNo">114</span>  public static final byte ACL_TAG_TYPE = TagType.ACL_TAG_TYPE;<a name="line.114"></a>
+<span class="sourceLineNo">115</span><a name="line.115"></a>
+<span class="sourceLineNo">116</span>  public static final char NAMESPACE_PREFIX = '@';<a name="line.116"></a>
+<span class="sourceLineNo">117</span><a name="line.117"></a>
+<span class="sourceLineNo">118</span>  /**<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   * Delimiter to separate user, column family, and qualifier in<a name="line.119"></a>
+<span class="sourceLineNo">120</span>   * _acl_ table info: column keys */<a name="line.120"></a>
+<span class="sourceLineNo">121</span>  public static final char ACL_KEY_DELIMITER = ',';<a name="line.121"></a>
+<span class="sourceLineNo">122</span><a name="line.122"></a>
+<span class="sourceLineNo">123</span>  private static final Logger LOG = LoggerFactory.getLogger(AccessControlLists.class);<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>  /**<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   * Stores a new user permission grant in the access control lists table.<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   * @param conf the configuration<a name="line.127"></a>
+<span class="sourceLineNo">128</span>   * @param userPerm the details of the permission to be granted<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   * @param t acl table instance. It is closed upon method return.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   * @throws IOException in the case of an error accessing the metadata table<a name="line.130"></a>
+<span class="sourceLineNo">131</span>   */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>  static void addUserPermission(Configuration conf, UserPermission userPerm, Table t,<a name="line.132"></a>
+<span class="sourceLineNo">133</span>                                boolean mergeExistingPermissions) throws IOException {<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    Permission.Action[] actions = userPerm.getActions();<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    byte[] rowKey = userPermissionRowKey(userPerm);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    Put p = new Put(rowKey);<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    byte[] key = userPermissionKey(userPerm);<a name="line.137"></a>
+<span class="sourceLineNo">138</span><a name="line.138"></a>
+<span class="sourceLineNo">139</span>    if ((actions == null) || (actions.length == 0)) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      String msg = "No actions associated with user '" + Bytes.toString(userPerm.getUser()) + "'";<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      LOG.warn(msg);<a name="line.141"></a>
+<span class="sourceLineNo">142</span>      throw new IOException(msg);<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    }<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>    Set&lt;Permission.Action&gt; actionSet = new TreeSet&lt;Permission.Action&gt;();<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    if(mergeExistingPermissions){<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      List&lt;UserPermission&gt; perms = getUserPermissions(conf, rowKey);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      UserPermission currentPerm = null;<a name="line.148"></a>
+<span class="sourceLineNo">149</span>      for (UserPermission perm : perms) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>        if (Bytes.equals(perm.getUser(), userPerm.getUser())<a name="line.150"></a>
+<span class="sourceLineNo">151</span>                &amp;&amp; ((userPerm.isGlobal() &amp;&amp; ACL_TABLE_NAME.equals(perm.getTableName()))<a name="line.151"></a>
+<span class="sourceLineNo">152</span>                || perm.tableFieldsEqual(userPerm))) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>          currentPerm = perm;<a name="line.153"></a>
+<span class="sourceLineNo">154</span>          break;<a name="line.154"></a>
+<span class="sourceLineNo">155</span>        }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>      if(currentPerm != null &amp;&amp; currentPerm.getActions() != null){<a name="line.158"></a>
+<span class="sourceLineNo">159</span>        actionSet.addAll(Arrays.asList(currentPerm.getActions()));<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>    // merge current action with new action.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    actionSet.addAll(Arrays.asList(actions));<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>    // serialize to byte array.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    byte[] value = new byte[actionSet.size()];<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    int index = 0;<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    for (Permission.Action action : actionSet) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      value[index++] = action.code();<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    p.add(CellBuilderFactory.create(CellBuilderType.SHALLOW_COPY)<a name="line.172"></a>
+<span class="sourceLineNo">173</span>        .setRow(p.getRow())<a name="line.173"></a>
+<span class="sourceLineNo">174</span>        .setFamily(ACL_LIST_FAMILY)<a name="line.174"></a>
+<span class="sourceLineNo">175</span>        .setQualifier(key)<a name="line.175"></a>
+<span class="sourceLineNo">176</span>        .setTimestamp(p.getTimeStamp())<a name="line.176"></a>
+<span class="sourceLineNo">177</span>        .setType(Type.Put)<a name="line.177"></a>
+<span class="sourceLineNo">178</span>        .setValue(value)<a name="line.178"></a>
+<span class="sourceLineNo">179</span>        .build());<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    if (LOG.isDebugEnabled()) {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>      LOG.debug("Writing permission with rowKey "+<a name="line.181"></a>
+<span class="sourceLineNo">182</span>          Bytes.toString(rowKey)+" "+<a name="line.182"></a>
+<span class="sourceLineNo">183</span>          Bytes.toString(key)+": "+Bytes.toStringBinary(value)<a name="line.183"></a>
+<span class="sourceLineNo">184</span>          );<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    try {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>      /**<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       * TODO: Use Table.put(Put) instead. This Table.put() happens within the RS. We are already in<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * AccessController. Means already there was an RPC happened to server (Actual grant call from<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       * client side). At RpcServer we have a ThreadLocal where we keep the CallContext and inside<a name="line.190"></a>
+<span class="sourceLineNo">191</span>       * that the current RPC called user info is set. The table on which put was called is created<a name="line.191"></a>
+<span class="sourceLineNo">192</span>       * via the RegionCP env and that uses a special Connection. The normal RPC channel will be by<a name="line.192"></a>
+<span class="sourceLineNo">193</span>       * passed here means there would have no further contact on to the RpcServer. So the<a name="line.193"></a>
+<span class="sourceLineNo">194</span>       * ThreadLocal is never getting reset. We ran the new put as a super user (User.runAsLoginUser<a name="line.194"></a>
+<span class="sourceLineNo">195</span>       * where the login user is the user who started RS process) but still as per the RPC context<a name="line.195"></a>
+<span class="sourceLineNo">196</span>       * it is the old user. When AsyncProcess was used, the execute happen via another thread from<a name="line.196"></a>
+<span class="sourceLineNo">197</span>       * pool and so old ThreadLocal variable is not accessible and so it looks as if no Rpc context<a name="line.197"></a>
+<span class="sourceLineNo">198</span>       * and we were relying on the super user who starts the RS process.<a name="line.198"></a>
+<span class="sourceLineNo">199</span>       */<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      t.put(Collections.singletonList(p));<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    } finally {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>      t.close();<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    }<a name="line.203"></a>
+<span class="sourceLineNo">204</span>  }<a name="line.204"></a>
+<span class="sourceLineNo">205</span><a name="line.205"></a>
+<span class="sourceLineNo">206</span>  static void addUserPermission(Configuration conf, UserPermission userPerm, Table t)<a name="line.206"></a>
+<span class="sourceLineNo">207</span>          throws IOException{<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    addUserPermission(conf, userPerm, t, false);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>  /**<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   * Removes a previously granted permission from the stored access control<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   * lists.  The {@link TablePermission} being removed must exactly match what<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   * is stored -- no wildcard matching is attempted.  Ie, if user "bob" has<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   * been granted "READ" access to the "data" table, but only to column family<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   * plus qualifier "info:colA", then trying to call this method with only<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   * user "bob" and the table name "data" (but without specifying the<a name="line.217"></a>
+<span class="sourceLineNo">218</span>   * column qualifier "info:colA") will have no effect.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   *<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   * @param conf the configuration<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   * @param userPerm the details of the permission to be revoked<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   * @param t acl table<a name="line.222"></a>
+<span class="sourceLineNo">223</span>   * @throws IOException if there is an error accessing the metadata table<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   */<a name="line.224"></a>
+<span class="sourceLineNo">225</span>  static void removeUserPermission(Configuration conf, UserPermission userPerm, Table t)<a name="line.225"></a>
+<span class="sourceLineNo">226</span>      throws IOException {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    if (null == userPerm.getActions()) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      removePermissionRecord(conf, userPerm, t);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    } else {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      // Get all the global user permissions from the acl table<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      List&lt;UserPermission&gt; permsList = getUserPermissions(conf, userPermissionRowKey(userPerm));<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      List&lt;Permission.Action&gt; remainingActions = new ArrayList&lt;&gt;();<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      List&lt;Permission.Action&gt; dropActions = Arrays.asList(userPerm.getActions());<a name="line.233"></a>
+<span class="sourceLineNo">234</span>      for (UserPermission perm : permsList) {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>        // Find the user and remove only the requested permissions<a name="line.235"></a>
+<span class="sourceLineNo">236</span>        if (Bytes.toString(perm.getUser()).equals(Bytes.toString(userPerm.getUser()))) {<a name="line.236"></a>
+<span class="sourceLineNo">237</span>          for (Permission.Action oldAction : perm.getActions()) {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>            if (!dropActions.contains(oldAction)) {<a name="line.238"></a>
+<span class="sourceLineNo">239</span>              remainingActions.add(oldAction);<a name="line.239"></a>
+<span class="sourceLineNo">240</span>            }<a name="line.240"></a>
+<span class="sourceLineNo">241</span>          }<a name="line.241"></a>
+<span class="sourceLineNo">242</span>          if (!remainingActions.isEmpty()) {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>            perm.setActions(remainingActions.toArray(new Permission.Action[remainingActions.size()]));<a name="line.243"></a>
+<span class="sourceLineNo">244</span>            addUserPermission(conf, perm, t);<a name="line.244"></a>
+<span class="sourceLineNo">245</span>          } else {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>            removePermissionRecord(conf, userPerm, t);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>          }<a name="line.247"></a>
+<span class="sourceLineNo">248</span>          break;<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>    if (LOG.isDebugEnabled()) {<a name="line.252"></a>
+<span class="sourceLineNo">253</span>      LOG.debug("Removed permission "+ userPerm.toString());<a name="line.253"></a>
+<span class="sourceLineNo">254</span>    }<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>  private static void removePermissionRecord(Configuration conf, UserPermission userPerm, Table t)<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      throws IOException {<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    Delete d = new Delete(userPermissionRowKey(userPerm));<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    d.addColumns(ACL_LIST_FAMILY, userPermissionKey(userPerm));<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    try {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>      t.delete(d);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>    } finally {<a name="line.263"></a>
+<span class="sourceLineNo">264</span>      t.close();<a name="line.264"></a>
+<span class="sourceLineNo">265</span>    }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>  }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>  /**<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   * Remove specified table from the _acl_ table.<a name="line.269"></a>
+<span class="sourceLineNo">270</span>   */<a name="line.270"></a>
+<span class="sourceLineNo">271</span>  static void removeTablePermissions(Configuration conf, TableName tableName, Table t)<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      throws IOException{<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    Delete d = new Delete(tableName.getName());<a name="line.273"></a>
+<span class="sourceLineNo">274</span><a name="line.274"></a>
+<span class="sourceLineNo">275</span>    if (LOG.isDebugEnabled()) {<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      LOG.debug("Removing permissions of removed table "+ tableName);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    }<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    try {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>      t.delete(d);<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    } finally {<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      t.close();<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    }<a name="line.282"></a>
+<span class="sourceLineNo">283</span>  }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>  /**<a name="line.285"></a>
+<span class="sourceLineNo">286</span>   * Remove specified namespace from the acl table.<a name="line.286"></a>
+<span class="sourceLineNo">287</span>   */<a name="line.287"></a>
+<span class="sourceLineNo">288</span>  static void removeNamespacePermissions(Configuration conf, String namespace, Table t)<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      throws IOException{<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    Delete d = new Delete(Bytes.toBytes(toNamespaceEntry(namespace)));<a name="line.290"></a>
+<span class="sourceLineNo">291</span><a name="line.291"></a>
+<span class="sourceLineNo">292</span>    if (LOG.isDebugEnabled()) {<a name="line.292"></a>
+<span class="sourceLineNo">293</span>      LOG.debug("Removing permissions of removed namespace "+ namespace);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>    }<a name="line.294"></a>
+<span class="sourceLineNo">295</span><a name="line.295"></a>
+<span class="sourceLineNo">296</span>    try {<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      t.delete(d);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    } finally {<a name="line.298"></a>
+<span class="sourceLineNo">299</span>      t.close();<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    }<a name="line.300"></a>
+<span class="sourceLineNo">301</span>  }<a name="line.301"></a>
+<span class="sourceLineNo">302</span><a name="line.302"></a>
+<span class="sourceLineNo">303</span>  static private void removeTablePermissions(TableName tableName, byte[] column, Table table,<a name="line.303"></a>
+<span class="sourceLineNo">304</span>      boolean closeTable) throws IOException {<a name="line.304"></a>
+<span class="sourceLineNo">305</span>    Scan scan = new Scan();<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.306"></a>
+<span class="sourceLineNo">307</span><a name="line.307"></a>
+<span class="sourceLineNo">308</span>    String columnName = Bytes.toString(column);<a name="line.308"></a>
+<span class="sourceLineNo">309</span>    scan.setFilter(new QualifierFilter(CompareOperator.EQUAL, new RegexStringComparator(<a name="line.309"></a>
+<span class="sourceLineNo">310</span>        String.format("(%s%s%s)|(%s%s)$",<a name="line.310"></a>
+<span class="sourceLineNo">311</span>            ACL_KEY_DELIMITER, columnName, ACL_KEY_DELIMITER,<a name="line.311"></a>
+<span class="sourceLineNo">312</span>            ACL_KEY_DELIMITER, columnName))));<a name="line.312"></a>
+<span class="sourceLineNo">313</span><a name="line.313"></a>
+<span class="sourceLineNo">314</span>    Set&lt;byte[]&gt; qualifierSet = new TreeSet&lt;&gt;(Bytes.BYTES_COMPARATOR);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    ResultScanner scanner = null;<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    try {<a name="line.316"></a>
+<span class="sourceLineNo">317</span>      scanner = table.getScanner(scan);<a name="line.317"></a>
+<span class="sourceLineNo">318</span>      for (Result res : scanner) {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>        for (byte[] q : res.getFamilyMap(ACL_LIST_FAMILY).navigableKeySet()) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>          qualifierSet.add(q);<a name="line.320"></a>
+<span class="sourceLineNo">321</span>        }<a name="line.321"></a>
+<span class="sourceLineNo">322</span>      }<a name="line.322"></a>
+<span class="sourceLineNo">323</span><a name="line.323"></a>
+<span class="sourceLineNo">324</span>      if (qualifierSet.size() &gt; 0) {<a name="line.324"></a>
+<span class="sourceLineNo">325</span>        Delete d = new Delete(tableName.getName());<a name="line.325"></a>
+<span class="sourceLineNo">326</span>        for (byte[] qualifier : qualifierSet) {<a name="line.326"></a>
+<span class="sourceLineNo">327</span>          d.addColumns(ACL_LIST_FAMILY, qualifier);<a name="line.327"></a>
+<span class="sourceLineNo">328</span>        }<a name="line.328"></a>
+<span class="sourceLineNo">329</span>        table.delete(d);<a name="line.329"></a>
+<span class="sourceLineNo">330</span>      }<a name="line.330"></a>
+<span class="sourceLineNo">331</span>    } finally {<a name="line.331"></a>
+<span class="sourceLineNo">332</span>      if (scanner != null) scanner.close();<a name="line.332"></a>
+<span class="sourceLineNo">333</span>      if (closeTable) table.close();<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    }<a name="line.334"></a>
+<span class="sourceLineNo">335</span>  }<a name="line.335"></a>
+<span class="sourceLineNo">336</span><a name="line.336"></a>
+<span class="sourceLineNo">337</span>  /**<a name="line.337"></a>
+<span class="sourceLineNo">338</span>   * Remove specified table column from the acl table.<a name="line.338"></a>
+<span class="sourceLineNo">339</span>   */<a name="line.339"></a>
+<span class="sourceLineNo">340</span>  static void removeTablePermissions(Configuration conf, TableName tableName, byte[] column,<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      Table t) throws IOException {<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    if (LOG.isDebugEnabled()) {<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      LOG.debug("Removing permissions of removed column " + Bytes.toString(column) +<a name="line.343"></a>
+<span class="sourceLineNo">344</span>          " from table "+ tableName);<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    }<a name="line.345"></a>
+<span class="sourceLineNo">346</span>    removeTablePermissions(tableName, column, t, true);<a name="line.346"></a>
+<span class="sourceLineNo">347</span>  }<a name="line.347"></a>
+<span class="sourceLineNo">348</span><a name="line.348"></a>
+<span class="sourceLineNo">349</span>  static byte[] userPermissionRowKey(UserPermission userPerm) {<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    byte[] row;<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    if(userPerm.hasNamespace()) {<a name="line.351"></a>
+<span class="sourceLineNo">352</span>      row = Bytes.toBytes(toNamespaceEntry(userPerm.getNamespace()));<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    } else if(userPerm.isGlobal()) {<a name="line.353"></a>
+<span class="sourceLineNo">354</span>      row = ACL_GLOBAL_NAME;<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    } else {<a name="line.355"></a>
+<span class="sourceLineNo">356</span>      row = userPerm.getTableName().getName();<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    }<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    return row;<a name="line.358"></a>
+<span class="sourceLineNo">359</span>  }<a name="line.359"></a>
+<span class="sourceLineNo">360</span><a name="line.360"></a>
+<span class="sourceLineNo">361</span>  /**<a name="line.361"></a>
+<span class="sourceLineNo">362</span>   * Build qualifier key from user permission:<a name="line.362"></a>
+<span class="sourceLineNo">363</span>   *  username<a name="line.363"></a>
+<span class="sourceLineNo">364</span>   *  username,family<a name="line.364"></a>
+<span class="sourceLineNo">365</span>   *  username,family,qualifier<a name="line.365"></a>
+<span class="sourceLineNo">366</span>   */<a name="line.366"></a>
+<span class="sourceLineNo">367</span>  static byte[] userPermissionKey(UserPermission userPerm) {<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    byte[] qualifier = userPerm.getQualifier();<a name="line.368"></a>
+<span class="sourceLineNo">369</span>    byte[] family = userPerm.getFamily();<a name="line.369"></a>
+<span class="sourceLineNo">370</span>    byte[] key = userPerm.getUser();<a name="line.370"></a>
+<span class="sourceLineNo">371</span><a name="line.371"></a>
+<span class="sourceLineNo">372</span>    if (family != null &amp;&amp; family.length &gt; 0) {<a name="line.372"></a>
+<span class="sourceLineNo">373</span>      key = Bytes.add(key, Bytes.add(new byte[]{ACL_KEY_DELIMITER}, family));<a name="line.373"></a>
+<span class="sourceLineNo">374</span>      if (qualifier != null &amp;&amp; qualifier.length &gt; 0) {<a name="line.374"></a>
+<span class="sourceLineNo">375</span>        key = Bytes.add(key, Bytes.add(new byte[]{ACL_KEY_DELIMITER}, qualifier));<a name="line.375"></a>
+<span class="sourceLineNo">376</span>      }<a name="line.376"></a>
+<span class="sourceLineNo">377</span>    }<a name="line.377"></a>
+<span class="sourceLineNo">378</span><a name="line.378"></a>
+<span class="sourceLineNo">379</span>    return key;<a name="line.379"></a>
+<span class="sourceLineNo">380</span>  }<a name="line.380"></a>
+<span class="sourceLineNo">381</span><a name="line.381"></a>
+<span class="sourceLineNo">382</span>  /**<a name="line.382"></a>
+<span class="sourceLineNo">383</span>   * Returns {@code true} if the given region is part of the {@code _acl_}<a name="line.383"></a>
+<span class="sourceLineNo">384</span>   * metadata table.<a name="line.384"></a>
+<span class="sourceLineNo">385</span>   */<a name="line.385"></a>
+<span class="sourceLineNo">386</span>  static boolean isAclRegion(Region region) {<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    return ACL_TABLE_NAME.equals(region.getTableDescriptor().getTableName());<a name="line.387"></a>
+<span class="sourceLineNo">388</span>  }<a name="line.388"></a>
+<span class="sourceLineNo">389</span><a name="line.389"></a>
+<span class="sourceLineNo">390</span>  /**<a name="line.390"></a>
+<span class="sourceLineNo">391</span>   * Returns {@code true} if the given table is {@code _acl_} metadata table.<a name="line.391"></a>
+<span class="sourceLineNo">392</span>   */<a name="line.392"></a>
+<span class="sourceLineNo">393</span>  static boolean isAclTable(TableDescriptor desc) {<a name="line.393"></a>
+<span class="sourceLineNo">394</span>    return ACL_TABLE_NAME.equals(desc.getTableName());<a name="line.394"></a>
+<span class="sourceLineNo">395</span>  }<a name="line.395"></a>
+<span class="sourceLineNo">396</span><a name="line.396"></a>
+<span class="sourceLineNo">397</span>  /**<a name="line.397"></a>
+<span class="sourceLineNo">398</span>   * Loads all of the permission grants stored in a region of the {@code _acl_}<a name="line.398"></a>
+<span class="sourceLineNo">399</span>   * table.<a name="line.399"></a>
+<span class="sourceLineNo">400</span>   *<a name="line.400"></a>
+<span class="sourceLineNo">401</span>   * @param aclRegion<a name="line.401"></a>
+<span class="sourceLineNo">402</span>   * @return a map of the permissions for this table.<a name="line.402"></a>
+<span class="sourceLineNo">403</span>   * @throws IOException<a name="line.403"></a>
+<span class="sourceLineNo">404</span>   */<a name="line.404"></a>
+<span class="sourceLineNo">405</span>  static Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; loadAll(Region aclRegion)<a name="line.405"></a>
+<span class="sourceLineNo">406</span>      throws IOException {<a name="line.406"></a>
+<span class="sourceLineNo">407</span><a name="line.407"></a>
+<span class="sourceLineNo">408</span>    if (!isAclRegion(aclRegion)) {<a name="line.408"></a>
+<span class="sourceLineNo">409</span>      throw new IOException("Can only load permissions from "+ACL_TABLE_NAME);<a name="line.409"></a>
+<span class="sourceLineNo">410</span>    }<a name="line.410"></a>
+<span class="sourceLineNo">411</span><a name="line.411"></a>
+<span class="sourceLineNo">412</span>    Map&lt;byte[], ListMultimap&lt;String, TablePermission&gt;&gt; allPerms = new TreeMap&lt;&gt;(Bytes.BYTES_RAWCOMPARATOR);<a name="line.412"></a>
+<span class="sourceLineNo">413</span><a name="line.413"></a>
+<span class="sourceLineNo">414</span>    // do a full scan of _acl_ table<a name="line.414"></a>
+<span class="sourceLineNo">415</span><a name="line.415"></a>
+<span class="sourceLineNo">416</span>    Scan scan = new Scan();<a name="line.416"></a>
+<span class="sourceLineNo">417</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>    InternalScanner iScanner = null;<a name="line.419"></a>
+<span class="sourceLineNo">420</span>    try {<a name="line.420"></a>
+<span class="sourceLineNo">421</span>      iScanner = aclRegion.getScanner(scan);<a name="line.421"></a>
+<span class="sourceLineNo">422</span><a name="line.422"></a>
+<span class="sourceLineNo">423</span>      while (true) {<a name="line.423"></a>
+<span class="sourceLineNo">424</span>        List&lt;Cell&gt; row = new ArrayList&lt;&gt;();<a name="line.424"></a>
+<span class="sourceLineNo">425</span><a name="line.425"></a>
+<span class="sourceLineNo">426</span>        boolean hasNext = iScanner.next(row);<a name="line.426"></a>
+<span class="sourceLineNo">427</span>        ListMultimap&lt;String,TablePermission&gt; perms = ArrayListMultimap.create();<a name="line.427"></a>
+<span class="sourceLineNo">428</span>        byte[] entry = null;<a name="line.428"></a>
+<span class="sourceLineNo">429</span>        for (Cell kv : row) {<a name="line.429"></a>
+<span class="sourceLineNo">430</span>          if (entry == null) {<a name="line.430"></a>
+<span class="sourceLineNo">431</span>            entry = CellUtil.cloneRow(kv);<a name="line.431"></a>
+<span class="sourceLineNo">432</span>          }<a name="line.432"></a>
+<span class="sourceLineNo">433</span>          Pair&lt;String,TablePermission&gt; permissionsOfUserOnTable =<a name="line.433"></a>
+<span class="sourceLineNo">434</span>              parsePermissionRecord(entry, kv);<a name="line.434"></a>
+<span class="sourceLineNo">435</span>          if (permissionsOfUserOnTable != null) {<a name="line.435"></a>
+<span class="sourceLineNo">436</span>            String username = permissionsOfUserOnTable.getFirst();<a name="line.436"></a>
+<span class="sourceLineNo">437</span>            TablePermission permissions = permissionsOfUserOnTable.getSecond();<a name="line.437"></a>
+<span class="sourceLineNo">438</span>            perms.put(username, permissions);<a name="line.438"></a>
+<span class="sourceLineNo">439</span>          }<a name="line.439"></a>
+<span class="sourceLineNo">440</span>        }<a name="line.440"></a>
+<span class="sourceLineNo">441</span>        if (entry != null) {<a name="line.441"></a>
+<span class="sourceLineNo">442</span>          allPerms.put(entry, perms);<a name="line.442"></a>
+<span class="sourceLineNo">443</span>        }<a name="line.443"></a>
+<span class="sourceLineNo">444</span>        if (!hasNext) {<a name="line.444"></a>
+<span class="sourceLineNo">445</span>          break;<a name="line.445"></a>
+<span class="sourceLineNo">446</span>        }<a name="line.446"></a>
+<span class="sourceLineNo">447</span>      }<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    } finally {<a name="line.448"></a>
+<span class="sourceLineNo">449</span>      if (iScanner != null) {<a name="line.449"></a>
+<span class="sourceLineNo">450</span>        iScanner.close();<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      }<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    }<a name="line.452"></a>
+<span class="sourceLineNo">453</span><a name="line.453"></a>
+<span class="sourceLineNo">454</span>    return allPerms;<a name="line.454"></a>
+<span class="sourceLineNo">455</span>  }<a name="line.455"></a>
+<span class="sourceLineNo">456</span><a name="line.456"></a>
+<span class="sourceLineNo">457</span>  /**<a name="line.457"></a>
+<span class="sourceLineNo">458</span>   * Load all permissions from the region server holding {@code _acl_},<a name="line.458"></a>
+<span class="sourceLineNo">459</span>   * primarily intended for testing purposes.<a name="line.459"></a>
+<span class="sourceLineNo">460</span>   */<a name="line.460"></a>
+<span class="sourceLineNo">461</span>  static Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; loadAll(<a name="line.461"></a>
+<span class="sourceLineNo">462</span>      Configuration conf) throws IOException {<a name="line.462"></a>
+<span class="sourceLineNo">463</span>    Map&lt;byte[], ListMultimap&lt;String,TablePermission&gt;&gt; allPerms = new TreeMap&lt;&gt;(Bytes.BYTES_RAWCOMPARATOR);<a name="line.463"></a>
+<span class="sourceLineNo">464</span><a name="line.464"></a>
+<span class="sourceLineNo">465</span>    // do a full scan of _acl_, filtering on only first table region rows<a name="line.465"></a>
+<span class="sourceLineNo">466</span><a name="line.466"></a>
+<span class="sourceLineNo">467</span>    Scan scan = new Scan();<a name="line.467"></a>
+<span class="sourceLineNo">468</span>    scan.addFamily(ACL_LIST_FAMILY);<a name="line.468"></a>
+<span class="sourceLineNo">469</span><a name="line.469"></a>
+<span class="sourceLineNo">470</span>    ResultScanner scanner = null;<a name="line.470"></a>
+<span class="sourceLineNo">471</span>    // TODO: Pass in a Connection rather than create one each time.<a name="line.471"></a>
+<span class="sourceLineNo">472</span>    try (Connection connection = ConnectionFactory.createConnection(conf)) {<a name="line.472"></a>
+<span class="sourceLineNo">473</span>      try (Table table = connection.getTable(ACL_TABLE_NAME)) {<a name="line.473"></a>
+<span class="sourceLineNo">474</span>        scanner = table.getScanner(scan);<a name="line.474"></a>
+<span class="sourceLineNo">475</span>        try {<a name="line.475"></a>
+<span class="sourceLineNo">476</span>          for (Result row : scanner) {<a name="line.476"></a>
+<span class="sourceLineNo">477</span>            ListMultimap&lt;String,TablePermission&gt; resultPerms = parsePermissions(row.getRow(), row);<a name="line.477

<TRUNCATED>

[13/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/security/access/AccessControlLists.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/AccessControlLists.html b/devapidocs/org/apache/hadoop/hbase/security/access/AccessControlLists.html
index 33c310d..64ea609 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/AccessControlLists.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/AccessControlLists.html
@@ -110,7 +110,7 @@ var activeTableTab = "activeTableTab";
 <hr>
 <br>
 <pre>@InterfaceAudience.Private
-public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.104">AccessControlLists</a>
+public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.105">AccessControlLists</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">Maintains lists of permission grants to users and groups to allow for
  authorization checks by <a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessController.html" title="class in org.apache.hadoop.hbase.security.access"><code>AccessController</code></a>.
@@ -464,7 +464,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_TABLE_NAME</h4>
-<pre>public static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.106">ACL_TABLE_NAME</a></pre>
+<pre>public static final&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.107">ACL_TABLE_NAME</a></pre>
 <div class="block">Internal storage table for access control lists</div>
 </li>
 </ul>
@@ -474,7 +474,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_GLOBAL_NAME</h4>
-<pre>public static final&nbsp;byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.108">ACL_GLOBAL_NAME</a></pre>
+<pre>public static final&nbsp;byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.109">ACL_GLOBAL_NAME</a></pre>
 </li>
 </ul>
 <a name="ACL_LIST_FAMILY_STR">
@@ -483,7 +483,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_LIST_FAMILY_STR</h4>
-<pre>public 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/security/access/AccessControlLists.html#line.110">ACL_LIST_FAMILY_STR</a></pre>
+<pre>public 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/security/access/AccessControlLists.html#line.111">ACL_LIST_FAMILY_STR</a></pre>
 <div class="block">Column family used to store ACL grants</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -497,7 +497,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_LIST_FAMILY</h4>
-<pre>public static final&nbsp;byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.111">ACL_LIST_FAMILY</a></pre>
+<pre>public static final&nbsp;byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.112">ACL_LIST_FAMILY</a></pre>
 </li>
 </ul>
 <a name="ACL_TAG_TYPE">
@@ -506,7 +506,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_TAG_TYPE</h4>
-<pre>public static final&nbsp;byte <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.113">ACL_TAG_TYPE</a></pre>
+<pre>public static final&nbsp;byte <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.114">ACL_TAG_TYPE</a></pre>
 <div class="block">KV tag to store per cell access control lists</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -520,7 +520,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>NAMESPACE_PREFIX</h4>
-<pre>public static final&nbsp;char <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.115">NAMESPACE_PREFIX</a></pre>
+<pre>public static final&nbsp;char <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.116">NAMESPACE_PREFIX</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.security.access.AccessControlLists.NAMESPACE_PREFIX">Constant Field Values</a></dd>
@@ -533,7 +533,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>ACL_KEY_DELIMITER</h4>
-<pre>public static final&nbsp;char <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.120">ACL_KEY_DELIMITER</a></pre>
+<pre>public static final&nbsp;char <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.121">ACL_KEY_DELIMITER</a></pre>
 <div class="block">Delimiter to separate user, column family, and qualifier in
  _acl_ table info: column keys</div>
 <dl>
@@ -548,7 +548,7 @@ 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/security/access/AccessControlLists.html#line.122">LOG</a></pre>
+<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.123">LOG</a></pre>
 </li>
 </ul>
 <a name="LIST_CODE">
@@ -557,7 +557,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>LIST_CODE</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.651">LIST_CODE</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.653">LIST_CODE</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.security.access.AccessControlLists.LIST_CODE">Constant Field Values</a></dd>
@@ -570,7 +570,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>WRITABLE_CODE</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.653">WRITABLE_CODE</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.655">WRITABLE_CODE</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.security.access.AccessControlLists.WRITABLE_CODE">Constant Field Values</a></dd>
@@ -583,7 +583,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>WRITABLE_NOT_ENCODED</h4>
-<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.655">WRITABLE_NOT_ENCODED</a></pre>
+<pre>private static final&nbsp;int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.657">WRITABLE_NOT_ENCODED</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.security.access.AccessControlLists.WRITABLE_NOT_ENCODED">Constant Field Values</a></dd>
@@ -604,7 +604,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>AccessControlLists</h4>
-<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.104">AccessControlLists</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.105">AccessControlLists</a>()</pre>
 </li>
 </ul>
 </li>
@@ -621,7 +621,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>addUserPermission</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.131">addUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.132">addUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                               <a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm,
                               <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t,
                               boolean&nbsp;mergeExistingPermissions)
@@ -643,7 +643,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>addUserPermission</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.205">addUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.206">addUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                               <a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm,
                               <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                        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>
@@ -659,7 +659,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removeUserPermission</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.224">removeUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.225">removeUserPermission</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                  <a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm,
                                  <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                           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>
@@ -686,7 +686,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removePermissionRecord</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.256">removePermissionRecord</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.257">removePermissionRecord</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                            <a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm,
                                            <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                                     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>
@@ -702,7 +702,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removeTablePermissions</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.270">removeTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.271">removeTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                    <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                    <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                             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>
@@ -719,7 +719,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removeNamespacePermissions</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.287">removeNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.288">removeNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                        <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>&nbsp;namespace,
                                        <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                                 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>
@@ -736,7 +736,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removeTablePermissions</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.302">removeTablePermissions</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.303">removeTablePermissions</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                            byte[]&nbsp;column,
                                            <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;table,
                                            boolean&nbsp;closeTable)
@@ -753,7 +753,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>removeTablePermissions</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.339">removeTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;void&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.340">removeTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                    <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName,
                                    byte[]&nbsp;column,
                                    <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
@@ -771,7 +771,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>userPermissionRowKey</h4>
-<pre>static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.348">userPermissionRowKey</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm)</pre>
+<pre>static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.349">userPermissionRowKey</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm)</pre>
 </li>
 </ul>
 <a name="userPermissionKey-org.apache.hadoop.hbase.security.access.UserPermission-">
@@ -780,7 +780,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>userPermissionKey</h4>
-<pre>static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.366">userPermissionKey</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm)</pre>
+<pre>static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.367">userPermissionKey</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&nbsp;userPerm)</pre>
 <div class="block">Build qualifier key from user permission:
   username
   username,family
@@ -793,7 +793,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isAclRegion</h4>
-<pre>static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.385">isAclRegion</a>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Region.html" title="interface in org.apache.hadoop.hbase.regionserver">Region</a>&nbsp;region)</pre>
+<pre>static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.386">isAclRegion</a>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Region.html" title="interface in org.apache.hadoop.hbase.regionserver">Region</a>&nbsp;region)</pre>
 <div class="block">Returns <code>true</code> if the given region is part of the <code>_acl_</code>
  metadata table.</div>
 </li>
@@ -804,7 +804,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isAclTable</h4>
-<pre>static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.392">isAclTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</pre>
+<pre>static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.393">isAclTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/client/TableDescriptor.html" title="interface in org.apache.hadoop.hbase.client">TableDescriptor</a>&nbsp;desc)</pre>
 <div class="block">Returns <code>true</code> if the given table is <code>_acl_</code> metadata table.</div>
 </li>
 </ul>
@@ -814,7 +814,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>loadAll</h4>
-<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.404">loadAll</a>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Region.html" title="interface in org.apache.hadoop.hbase.regionserver">Region</a>&nbsp;aclRegion)
+<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.405">loadAll</a>(<a href="../../../../../../org/apache/hadoop/hbase/regionserver/Region.html" title="interface in org.apache.hadoop.hbase.regionserver">Region</a>&nbsp;aclRegion)
                                                                                                                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">Loads all of the permission grants stored in a region of the <code>_acl_</code>
  table.</div>
@@ -834,7 +834,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>loadAll</h4>
-<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.460">loadAll</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
+<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;byte[],org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.461">loadAll</a>(org.apache.hadoop.conf.Configuration&nbsp;conf)
                                                                                                                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">Load all permissions from the region server holding <code>_acl_</code>,
  primarily intended for testing purposes.</div>
@@ -850,7 +850,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getTablePermissions</h4>
-<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.488">getTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.489">getTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                                                                                              <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                                                                                                       throws <a href="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>
@@ -865,7 +865,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getNamespacePermissions</h4>
-<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.493">getNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.495">getNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                                                                                                  <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>&nbsp;namespace)
                                                                                                                           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>
@@ -880,7 +880,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getPermissions</h4>
-<pre>static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.507">getPermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.509">getPermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                                                                                  byte[]&nbsp;entryName,
                                                                                                                  <a href="../../../../../../org/apache/hadoop/hbase/client/Table.html" title="interface in org.apache.hadoop.hbase.client">Table</a>&nbsp;t)
                                                                                                           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>
@@ -903,7 +903,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getUserTablePermissions</h4>
-<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.539">getUserTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.541">getUserTablePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                     <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>&nbsp;tableName)
                                              throws <a href="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">Returns the currently granted permissions for a given table as a list of
@@ -920,7 +920,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getUserNamespacePermissions</h4>
-<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.544">getUserNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.546">getUserNamespacePermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                         <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>&nbsp;namespace)
                                                  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>
@@ -935,7 +935,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getUserPermissions</h4>
-<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.549">getUserPermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+<pre>static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/UserPermission.html" title="class in org.apache.hadoop.hbase.security.access">UserPermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.551">getUserPermissions</a>(org.apache.hadoop.conf.Configuration&nbsp;conf,
                                                byte[]&nbsp;entryName)
                                         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>
@@ -950,7 +950,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>parsePermissions</h4>
-<pre>private static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.574">parsePermissions</a>(byte[]&nbsp;entryName,
+<pre>private static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.576">parsePermissions</a>(byte[]&nbsp;entryName,
                                                                                                                            <a href="../../../../../../org/apache/hadoop/hbase/client/Result.html" title="class in org.apache.hadoop.hbase.client">Result</a>&nbsp;result)</pre>
 </li>
 </ul>
@@ -960,7 +960,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>parsePermissionRecord</h4>
-<pre>private static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.593">parsePermissionRecord</a>(byte[]&nbsp;entryName,
+<pre>private static&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a>&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.595">parsePermissionRecord</a>(byte[]&nbsp;entryName,
                                                                   <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</pre>
 </li>
 </ul>
@@ -970,7 +970,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>writePermissionsAsBytes</h4>
-<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.645">writePermissionsAsBytes</a>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;perms,
+<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.647">writePermissionsAsBytes</a>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;perms,
                                              org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
 <div class="block">Writes a set of permissions as <code>Writable</code> instances
  and returns the resulting byte array.
@@ -984,7 +984,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>readWritablePermissions</h4>
-<pre>private static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.657">readWritablePermissions</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>&nbsp;in,
+<pre>private static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.659">readWritablePermissions</a>(<a href="http://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>&nbsp;in,
                                                              org.apache.hadoop.conf.Configuration&nbsp;conf)
                                                       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>,
                                                              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></pre>
@@ -1001,7 +1001,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>readPermissions</h4>
-<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.678">readPermissions</a>(byte[]&nbsp;data,
+<pre>public static&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap&lt;<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="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.680">readPermissions</a>(byte[]&nbsp;data,
                                                                                                                          org.apache.hadoop.conf.Configuration&nbsp;conf)
                                                                                                                   throws <a href="../../../../../../org/apache/hadoop/hbase/exceptions/DeserializationException.html" title="class in org.apache.hadoop.hbase.exceptions">DeserializationException</a></pre>
 <div class="block">Reads a set of permissions as <code>Writable</code> instances from the input
@@ -1018,7 +1018,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isNamespaceEntry</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.709">isNamespaceEntry</a>(<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>&nbsp;entryName)</pre>
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.711">isNamespaceEntry</a>(<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>&nbsp;entryName)</pre>
 </li>
 </ul>
 <a name="isNamespaceEntry-byte:A-">
@@ -1027,7 +1027,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>isNamespaceEntry</h4>
-<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.713">isNamespaceEntry</a>(byte[]&nbsp;entryName)</pre>
+<pre>public static&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.715">isNamespaceEntry</a>(byte[]&nbsp;entryName)</pre>
 </li>
 </ul>
 <a name="toNamespaceEntry-java.lang.String-">
@@ -1036,7 +1036,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>toNamespaceEntry</h4>
-<pre>public static&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>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.717">toNamespaceEntry</a>(<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>&nbsp;namespace)</pre>
+<pre>public static&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>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.719">toNamespaceEntry</a>(<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>&nbsp;namespace)</pre>
 </li>
 </ul>
 <a name="fromNamespaceEntry-java.lang.String-">
@@ -1045,7 +1045,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>fromNamespaceEntry</h4>
-<pre>public static&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>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.721">fromNamespaceEntry</a>(<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>&nbsp;namespace)</pre>
+<pre>public static&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>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.723">fromNamespaceEntry</a>(<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>&nbsp;namespace)</pre>
 </li>
 </ul>
 <a name="toNamespaceEntry-byte:A-">
@@ -1054,7 +1054,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>toNamespaceEntry</h4>
-<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.727">toNamespaceEntry</a>(byte[]&nbsp;namespace)</pre>
+<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.729">toNamespaceEntry</a>(byte[]&nbsp;namespace)</pre>
 </li>
 </ul>
 <a name="fromNamespaceEntry-byte:A-">
@@ -1063,7 +1063,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>fromNamespaceEntry</h4>
-<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.734">fromNamespaceEntry</a>(byte[]&nbsp;namespace)</pre>
+<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.736">fromNamespaceEntry</a>(byte[]&nbsp;namespace)</pre>
 </li>
 </ul>
 <a name="getCellPermissionsForUser-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.Cell-">
@@ -1072,7 +1072,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getCellPermissionsForUser</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.742">getCellPermissionsForUser</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>&gt;&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AccessControlLists.html#line.744">getCellPermissionsForUser</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a>&nbsp;user,
                                                          <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)
                                                   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>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html b/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
index 261b9fc..c30d5fc 100644
--- a/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
@@ -137,9 +137,9 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.Strategy.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessControlFilter.Strategy</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
----------------------------------------------------------------------
diff --git a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
index 70a07d0..6ae3908 100644
--- a/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/util/package-tree.html
@@ -535,14 +535,14 @@
 <ul>
 <li type="circle">java.lang.<a href="http://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="http://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="http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLock.ReferenceType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">IdReadWriteLock.ReferenceType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.ErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HBaseFsck.ErrorReporter.ERROR_CODE</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ChecksumType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">ChecksumType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Order</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.PureJavaComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.PureJavaComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
-<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.PoolType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PoolMap.PoolType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Order.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Order</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PrettyPrinter.Unit.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PrettyPrinter.Unit</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/HBaseFsck.ErrorReporter.ERROR_CODE.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">HBaseFsck.ErrorReporter.ERROR_CODE</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/PoolMap.PoolType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">PoolMap.PoolType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/IdReadWriteLock.ReferenceType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">IdReadWriteLock.ReferenceType</span></a></li>
 </ul>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
----------------------------------------------------------------------
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
index 88b7cb3..c8cf4de 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
@@ -16,11 +16,11 @@
 <span class="sourceLineNo">008</span>@InterfaceAudience.Private<a name="line.8"></a>
 <span class="sourceLineNo">009</span>public class Version {<a name="line.9"></a>
 <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 = "f458b89c05e079a0a0c4946a4f965fbb94f9fd8c";<a name="line.11"></a>
+<span class="sourceLineNo">011</span>  public static final String revision = "f0d0501d556efb8796138d4aa92ce4f276c93c3b";<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 = "Tue Jan  9 14:42:58 UTC 2018";<a name="line.13"></a>
+<span class="sourceLineNo">013</span>  public static final String date = "Wed Jan 10 14:42:56 UTC 2018";<a name="line.13"></a>
 <span class="sourceLineNo">014</span>  public static final String url = "git://asf920.gq1.ygridcore.net/home/jenkins/jenkins-slave/workspace/hbase_generate_website/hbase";<a name="line.14"></a>
-<span class="sourceLineNo">015</span>  public static final String srcChecksum = "1dc67f30f31b2283f034ca2d1ae27fee";<a name="line.15"></a>
+<span class="sourceLineNo">015</span>  public static final String srcChecksum = "1d36de1c42253feef08a258d994ee96c";<a name="line.15"></a>
 <span class="sourceLineNo">016</span>}<a name="line.16"></a>
 
 


[07/16] hbase-site git commit: Published site at .

Posted by gi...@apache.org.
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/index.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/index.html
index a9a0ce0..9913e9b 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/index.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/integration.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/integration.html
index 7b98e34..62a39a4 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/integration.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/issue-tracking.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/issue-tracking.html
index 78af14a..2a54150 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/issue-tracking.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/license.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/license.html
index 9d90ff4..0a9ad4c 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/license.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/mail-lists.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/mail-lists.html
index aa547e3..a6f1f91 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/mail-lists.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugin-management.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugin-management.html
index 769c0c2..b5bbac1 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugin-management.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugins.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugins.html
index 6f89d1a..0b8297e 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/plugins.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -226,7 +226,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-info.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-info.html
index f423f5b..4f589cf 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-info.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-reports.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-reports.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-reports.html
index 289769e..b7f99f6 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-reports.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -128,7 +128,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-summary.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-summary.html
index 264a438..14aa7ed 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/project-summary.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -166,7 +166,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/source-repository.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/source-repository.html
index 63a161f..e8741cd 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/source-repository.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/team-list.html b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/team-list.html
index 1c4b257..cc32ff9 100644
--- a/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/team-list.html
+++ b/hbase-build-configuration/hbase-archetypes/hbase-shaded-client-project/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Exemplar for hbase-shaded-client archetype &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/index.html b/hbase-build-configuration/hbase-archetypes/index.html
index bb9ee7f..9398197 100644
--- a/hbase-build-configuration/hbase-archetypes/index.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -135,7 +135,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/integration.html b/hbase-build-configuration/hbase-archetypes/integration.html
index 8f88836..a15a457 100644
--- a/hbase-build-configuration/hbase-archetypes/integration.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/issue-tracking.html b/hbase-build-configuration/hbase-archetypes/issue-tracking.html
index 84b7c80..4272a81 100644
--- a/hbase-build-configuration/hbase-archetypes/issue-tracking.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/license.html b/hbase-build-configuration/hbase-archetypes/license.html
index 1f23457..3e33060 100644
--- a/hbase-build-configuration/hbase-archetypes/license.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/mail-lists.html b/hbase-build-configuration/hbase-archetypes/mail-lists.html
index c663ff4..4ddf210 100644
--- a/hbase-build-configuration/hbase-archetypes/mail-lists.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/plugin-management.html b/hbase-build-configuration/hbase-archetypes/plugin-management.html
index 1a3b0c1..91d1d6b 100644
--- a/hbase-build-configuration/hbase-archetypes/plugin-management.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/plugins.html b/hbase-build-configuration/hbase-archetypes/plugins.html
index 0b38e83..ca7c162 100644
--- a/hbase-build-configuration/hbase-archetypes/plugins.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -214,7 +214,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/project-info.html b/hbase-build-configuration/hbase-archetypes/project-info.html
index cccd8da..dd69d22 100644
--- a/hbase-build-configuration/hbase-archetypes/project-info.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/project-summary.html b/hbase-build-configuration/hbase-archetypes/project-summary.html
index ad6f8b6..dc8bef9 100644
--- a/hbase-build-configuration/hbase-archetypes/project-summary.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -163,7 +163,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/source-repository.html b/hbase-build-configuration/hbase-archetypes/source-repository.html
index 14e0527..fe92872 100644
--- a/hbase-build-configuration/hbase-archetypes/source-repository.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-archetypes/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-archetypes/team-list.html b/hbase-build-configuration/hbase-archetypes/team-list.html
index 3eaafc1..9febe58 100644
--- a/hbase-build-configuration/hbase-archetypes/team-list.html
+++ b/hbase-build-configuration/hbase-archetypes/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Archetypes &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/checkstyle.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/checkstyle.html b/hbase-build-configuration/hbase-spark/checkstyle.html
index b84050c..48d075c 100644
--- a/hbase-build-configuration/hbase-spark/checkstyle.html
+++ b/hbase-build-configuration/hbase-spark/checkstyle.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -150,7 +150,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/dependencies.html b/hbase-build-configuration/hbase-spark/dependencies.html
index d489d52..5a11830 100644
--- a/hbase-build-configuration/hbase-spark/dependencies.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -5692,7 +5692,7 @@ file comparators, endian transformation classes, and much more.</p>
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/dependency-convergence.html b/hbase-build-configuration/hbase-spark/dependency-convergence.html
index 3ad6968..ffcca51 100644
--- a/hbase-build-configuration/hbase-spark/dependency-convergence.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/dependency-info.html b/hbase-build-configuration/hbase-spark/dependency-info.html
index b16bc24..c1ae496 100644
--- a/hbase-build-configuration/hbase-spark/dependency-info.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -147,7 +147,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/dependency-management.html b/hbase-build-configuration/hbase-spark/dependency-management.html
index fd05f1e..f5d2068 100644
--- a/hbase-build-configuration/hbase-spark/dependency-management.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/index.html b/hbase-build-configuration/hbase-spark/index.html
index fad14d2..39960a6 100644
--- a/hbase-build-configuration/hbase-spark/index.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/integration.html b/hbase-build-configuration/hbase-spark/integration.html
index eaf54b5..4bf2cac 100644
--- a/hbase-build-configuration/hbase-spark/integration.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/issue-tracking.html b/hbase-build-configuration/hbase-spark/issue-tracking.html
index ee98206..4170ea2 100644
--- a/hbase-build-configuration/hbase-spark/issue-tracking.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/license.html b/hbase-build-configuration/hbase-spark/license.html
index cff8786..cddbab1 100644
--- a/hbase-build-configuration/hbase-spark/license.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/mail-lists.html b/hbase-build-configuration/hbase-spark/mail-lists.html
index f724e7a..5c4bb2f 100644
--- a/hbase-build-configuration/hbase-spark/mail-lists.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/plugin-management.html b/hbase-build-configuration/hbase-spark/plugin-management.html
index e67bb4b..085e8cc 100644
--- a/hbase-build-configuration/hbase-spark/plugin-management.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/plugins.html b/hbase-build-configuration/hbase-spark/plugins.html
index 20a0bbf..225051c 100644
--- a/hbase-build-configuration/hbase-spark/plugins.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -238,7 +238,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/project-info.html b/hbase-build-configuration/hbase-spark/project-info.html
index e108cd0..1433cc7 100644
--- a/hbase-build-configuration/hbase-spark/project-info.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/project-reports.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/project-reports.html b/hbase-build-configuration/hbase-spark/project-reports.html
index efc8545..0c9af86 100644
--- a/hbase-build-configuration/hbase-spark/project-reports.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -131,7 +131,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/project-summary.html b/hbase-build-configuration/hbase-spark/project-summary.html
index d470920..41f7c68 100644
--- a/hbase-build-configuration/hbase-spark/project-summary.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -166,7 +166,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/source-repository.html b/hbase-build-configuration/hbase-spark/source-repository.html
index 93248a7..97d5502 100644
--- a/hbase-build-configuration/hbase-spark/source-repository.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/hbase-spark/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/hbase-spark/team-list.html b/hbase-build-configuration/hbase-spark/team-list.html
index 33f2bc0..35fb57d 100644
--- a/hbase-build-configuration/hbase-spark/team-list.html
+++ b/hbase-build-configuration/hbase-spark/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Spark &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/index.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/index.html b/hbase-build-configuration/index.html
index d0accd6..4b3b67e 100644
--- a/hbase-build-configuration/index.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -119,7 +119,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/integration.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/integration.html b/hbase-build-configuration/integration.html
index 1a6330a..0a415f7 100644
--- a/hbase-build-configuration/integration.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/issue-tracking.html b/hbase-build-configuration/issue-tracking.html
index d665d3a..2604681 100644
--- a/hbase-build-configuration/issue-tracking.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/license.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/license.html b/hbase-build-configuration/license.html
index 9c58332..6ae2a03 100644
--- a/hbase-build-configuration/license.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/mail-lists.html b/hbase-build-configuration/mail-lists.html
index 0c32897..b98183f 100644
--- a/hbase-build-configuration/mail-lists.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/plugin-management.html b/hbase-build-configuration/plugin-management.html
index fe52dfe..1c1296b 100644
--- a/hbase-build-configuration/plugin-management.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/plugins.html b/hbase-build-configuration/plugins.html
index 6584456..9f411cd 100644
--- a/hbase-build-configuration/plugins.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -214,7 +214,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/project-info.html b/hbase-build-configuration/project-info.html
index 524c77e..d180234 100644
--- a/hbase-build-configuration/project-info.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -167,7 +167,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/project-summary.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/project-summary.html b/hbase-build-configuration/project-summary.html
index c401e2f..603854f 100644
--- a/hbase-build-configuration/project-summary.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -163,7 +163,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/source-repository.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/source-repository.html b/hbase-build-configuration/source-repository.html
index 8dd660f..d48bba9 100644
--- a/hbase-build-configuration/source-repository.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -134,7 +134,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-build-configuration/team-list.html
----------------------------------------------------------------------
diff --git a/hbase-build-configuration/team-list.html b/hbase-build-configuration/team-list.html
index 01beaea..040bf10 100644
--- a/hbase-build-configuration/team-list.html
+++ b/hbase-build-configuration/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase - Build Configuration &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -553,7 +553,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/checkstyle.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/checkstyle.html b/hbase-shaded-check-invariants/checkstyle.html
index b2b8fc0..30ace9a 100644
--- a/hbase-shaded-check-invariants/checkstyle.html
+++ b/hbase-shaded-check-invariants/checkstyle.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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -150,7 +150,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/dependencies.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/dependencies.html b/hbase-shaded-check-invariants/dependencies.html
index d420136..f60b55c 100644
--- a/hbase-shaded-check-invariants/dependencies.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -2883,7 +2883,7 @@ Jackson JSON processor's data binding functionality.</p>
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/dependency-convergence.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/dependency-convergence.html b/hbase-shaded-check-invariants/dependency-convergence.html
index 4853dc5..ea91796 100644
--- a/hbase-shaded-check-invariants/dependency-convergence.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -912,7 +912,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/dependency-info.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/dependency-info.html b/hbase-shaded-check-invariants/dependency-info.html
index 5ae1dcd..f7b12cc 100644
--- a/hbase-shaded-check-invariants/dependency-info.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -148,7 +148,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/dependency-management.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/dependency-management.html b/hbase-shaded-check-invariants/dependency-management.html
index 5761d49..6da356b 100644
--- a/hbase-shaded-check-invariants/dependency-management.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -810,7 +810,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/index.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/index.html b/hbase-shaded-check-invariants/index.html
index 880b093..4af8e7a 100644
--- a/hbase-shaded-check-invariants/index.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; About</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -122,7 +122,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/integration.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/integration.html b/hbase-shaded-check-invariants/integration.html
index 2bc044e..9b0d57d 100644
--- a/hbase-shaded-check-invariants/integration.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -126,7 +126,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/issue-tracking.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/issue-tracking.html b/hbase-shaded-check-invariants/issue-tracking.html
index 337a66d..433a274 100644
--- a/hbase-shaded-check-invariants/issue-tracking.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -123,7 +123,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/license.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/license.html b/hbase-shaded-check-invariants/license.html
index 045a735..2afdfbc 100644
--- a/hbase-shaded-check-invariants/license.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -326,7 +326,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/mail-lists.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/mail-lists.html b/hbase-shaded-check-invariants/mail-lists.html
index 3dd54ee..7dc4673 100644
--- a/hbase-shaded-check-invariants/mail-lists.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -176,7 +176,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/plugin-management.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/plugin-management.html b/hbase-shaded-check-invariants/plugin-management.html
index b844048..ba8cdba 100644
--- a/hbase-shaded-check-invariants/plugin-management.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -271,7 +271,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/plugins.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/plugins.html b/hbase-shaded-check-invariants/plugins.html
index ac560b0..b3ed1fa 100644
--- a/hbase-shaded-check-invariants/plugins.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -218,7 +218,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/project-info.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/project-info.html b/hbase-shaded-check-invariants/project-info.html
index 884be0a..554bea4 100644
--- a/hbase-shaded-check-invariants/project-info.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -170,7 +170,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/828b306f/hbase-shaded-check-invariants/project-reports.html
----------------------------------------------------------------------
diff --git a/hbase-shaded-check-invariants/project-reports.html b/hbase-shaded-check-invariants/project-reports.html
index 7b6649b..147ca9e 100644
--- a/hbase-shaded-check-invariants/project-reports.html
+++ b/hbase-shaded-check-invariants/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="20180109" />
+    <meta name="Date-Revision-yyyymmdd" content="20180110" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase Shaded Packaging Invariants &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" />
@@ -128,7 +128,7 @@
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-01-09</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-01-10</li>
             </p>
                 </div>