Published site at 1b08ba7385d0dd914a6fb9722b786e4ece116b28.
authorjenkins <builds@apache.org>
Fri, 14 Dec 2018 14:52:45 +0000 (14:52 +0000)
committerjenkins <builds@apache.org>
Fri, 14 Dec 2018 14:52:45 +0000 (14:52 +0000)
71 files changed:
acid-semantics.html
apache_hbase_reference_guide.pdf
apidocs/index-all.html
apidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
apidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html
apidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html
apidocs/src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
apidocs/src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html
book.html
bulk-loads.html
checkstyle-aggregate.html
checkstyle.rss
coc.html
dependencies.html
dependency-convergence.html
dependency-info.html
dependency-management.html
devapidocs/constant-values.html
devapidocs/index-all.html
devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
devapidocs/org/apache/hadoop/hbase/client/package-tree.html
devapidocs/org/apache/hadoop/hbase/filter/package-tree.html
devapidocs/org/apache/hadoop/hbase/io/hfile/package-tree.html
devapidocs/org/apache/hadoop/hbase/ipc/package-tree.html
devapidocs/org/apache/hadoop/hbase/mapreduce/package-tree.html
devapidocs/org/apache/hadoop/hbase/master/package-tree.html
devapidocs/org/apache/hadoop/hbase/master/procedure/package-tree.html
devapidocs/org/apache/hadoop/hbase/monitoring/package-tree.html
devapidocs/org/apache/hadoop/hbase/package-tree.html
devapidocs/org/apache/hadoop/hbase/procedure2/package-tree.html
devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
devapidocs/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html
devapidocs/org/apache/hadoop/hbase/quotas/class-use/RpcThrottlingException.html
devapidocs/org/apache/hadoop/hbase/quotas/package-tree.html
devapidocs/org/apache/hadoop/hbase/regionserver/StoreScanner.html
devapidocs/org/apache/hadoop/hbase/regionserver/package-tree.html
devapidocs/org/apache/hadoop/hbase/regionserver/querymatcher/package-tree.html
devapidocs/org/apache/hadoop/hbase/regionserver/wal/package-tree.html
devapidocs/org/apache/hadoop/hbase/replication/regionserver/package-tree.html
devapidocs/org/apache/hadoop/hbase/security/access/package-tree.html
devapidocs/org/apache/hadoop/hbase/security/package-tree.html
devapidocs/org/apache/hadoop/hbase/thrift/package-tree.html
devapidocs/org/apache/hadoop/hbase/util/package-tree.html
devapidocs/org/apache/hadoop/hbase/wal/package-tree.html
devapidocs/src-html/org/apache/hadoop/hbase/Version.html
devapidocs/src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html
devapidocs/src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html
devapidocs/src-html/org/apache/hadoop/hbase/quotas/TimeBasedLimiter.html
devapidocs/src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html
downloads.html
export_control.html
index.html
integration.html
issue-tracking.html
license.html
mail-lists.html
metrics.html
old_news.html
plugin-management.html
plugins.html
poweredbyhbase.html
project-info.html
project-reports.html
project-summary.html
pseudo-distributed.html
replication.html
resources.html
source-repository.html
sponsors.html
supportingprojects.html
team-list.html

index ea1b7bd..0049633 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) ACID Properties
@@ -611,7 +611,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index dada44a..6822577 100644 (file)
@@ -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:20181213143311+00'00')
-/CreationDate (D:20181213144904+00'00')
+/ModDate (D:20181214143301+00'00')
+/CreationDate (D:20181214144914+00'00')
 >>
 endobj
 2 0 obj
index 3cd9b62..239b685 100644 (file)
@@ -18632,18 +18632,24 @@ Input/OutputFormats, a table indexing MapReduce job, and utility methods.</div>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
index 995d575..b978b24 100644 (file)
@@ -152,12 +152,21 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#NumWriteRequestsExceeded">NumWriteRequestsExceeded</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#ReadCapacityUnitExceeded">ReadCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#ReadSizeExceeded">ReadSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#RequestCapacityUnitExceeded">RequestCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#RequestSizeExceeded">RequestSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#WriteCapacityUnitExceeded">WriteCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#WriteSizeExceeded">WriteSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
 </table>
@@ -265,12 +274,39 @@ the order they are declared.</div>
 <a name="ReadSizeExceeded">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>ReadSizeExceeded</h4>
 <pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">ReadSizeExceeded</a></pre>
 </li>
 </ul>
+<a name="RequestCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RequestCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">RequestCapacityUnitExceeded</a></pre>
+</li>
+</ul>
+<a name="ReadCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ReadCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">ReadCapacityUnitExceeded</a></pre>
+</li>
+</ul>
+<a name="WriteCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>WriteCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.33">WriteCapacityUnitExceeded</a></pre>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
index 7e8a509..9e358cf 100644 (file)
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9};
+var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -224,14 +224,26 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 </tr>
 <tr id="i5" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr id="i6" class="altColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr id="i7" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 </table>
@@ -269,7 +281,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>RpcThrottlingException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.45">RpcThrottlingException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.47">RpcThrottlingException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
 </li>
 </ul>
 <a name="RpcThrottlingException-org.apache.hadoop.hbase.quotas.RpcThrottlingException.Type-long-java.lang.String-">
@@ -278,7 +290,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockListLast">
 <li class="blockList">
 <h4>RpcThrottlingException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.61">RpcThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.63">RpcThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
                               long&nbsp;waitInterval,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
 </li>
@@ -297,7 +309,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>getType</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.67">getType</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.69">getType</a>()</pre>
 </li>
 </ul>
 <a name="getWaitInterval--">
@@ -306,7 +318,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>getWaitInterval</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.71">getWaitInterval</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.73">getWaitInterval</a>()</pre>
 </li>
 </ul>
 <a name="throwNumRequestsExceeded-long-">
@@ -315,7 +327,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.75">throwNumRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.77">throwNumRequestsExceeded</a>(long&nbsp;waitInterval)
                                      throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -329,7 +341,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwRequestSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.80">throwRequestSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.82">throwRequestSizeExceeded</a>(long&nbsp;waitInterval)
                                      throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -343,7 +355,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumReadRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.85">throwNumReadRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.87">throwNumReadRequestsExceeded</a>(long&nbsp;waitInterval)
                                          throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -357,7 +369,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumWriteRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.90">throwNumWriteRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.92">throwNumWriteRequestsExceeded</a>(long&nbsp;waitInterval)
                                           throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -371,7 +383,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwWriteSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.95">throwWriteSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.97">throwWriteSizeExceeded</a>(long&nbsp;waitInterval)
                                    throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -382,10 +394,10 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <a name="throwReadSizeExceeded-long-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>throwReadSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.99">throwReadSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.101">throwReadSizeExceeded</a>(long&nbsp;waitInterval)
                                   throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -393,6 +405,48 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 </dl>
 </li>
 </ul>
+<a name="throwRequestCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>throwRequestCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.105">throwRequestCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                             throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="throwReadCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>throwReadCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.110">throwReadCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                          throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="throwWriteCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>throwWriteCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.115">throwWriteCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                           throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
index d963d0b..a4984d4 100644 (file)
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 </tbody>
index d589905..7accbf5 100644 (file)
 <span class="sourceLineNo">029</span>  @InterfaceAudience.Public<a name="line.29"></a>
 <span class="sourceLineNo">030</span>  public enum Type {<a name="line.30"></a>
 <span class="sourceLineNo">031</span>    NumRequestsExceeded, RequestSizeExceeded, NumReadRequestsExceeded, NumWriteRequestsExceeded,<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded,<a name="line.32"></a>
-<span class="sourceLineNo">033</span>  }<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>  private static final String[] MSG_TYPE =<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.36"></a>
-<span class="sourceLineNo">037</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.37"></a>
-<span class="sourceLineNo">038</span>        "write size limit exceeded", "read size limit exceeded", };<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>  private static final String MSG_WAIT = " - wait ";<a name="line.40"></a>
+<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded, RequestCapacityUnitExceeded, ReadCapacityUnitExceeded,<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    WriteCapacityUnitExceeded<a name="line.33"></a>
+<span class="sourceLineNo">034</span>  }<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>  private static final String[] MSG_TYPE =<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.37"></a>
+<span class="sourceLineNo">038</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.38"></a>
+<span class="sourceLineNo">039</span>        "write size limit exceeded", "read size limit exceeded", "request capacity unit exceeded",<a name="line.39"></a>
+<span class="sourceLineNo">040</span>        "read capacity unit exceeded", "write capacity unit exceeded" };<a name="line.40"></a>
 <span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>  private long waitInterval;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>  private Type type;<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>  public RpcThrottlingException(String msg) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    super(msg);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>    // Dirty workaround to get the information after<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      if (index &gt;= 0) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.53"></a>
-<span class="sourceLineNo">054</span>        type = Type.values()[i];<a name="line.54"></a>
-<span class="sourceLineNo">055</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>        break;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      }<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>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    super(msg);<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    this.waitInterval = waitInterval;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    this.type = type;<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>  public Type getType() {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    return this.type;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>  }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>  public long getWaitInterval() {<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    return this.waitInterval;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      RpcThrottlingException {<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<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>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      throws RpcThrottlingException {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  }<a name="line.83"></a>
-<span class="sourceLineNo">084</span><a name="line.84"></a>
-<span class="sourceLineNo">085</span>  public static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      throws RpcThrottlingException {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<a name="line.87"></a>
-<span class="sourceLineNo">088</span>  }<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>  public static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      throws RpcThrottlingException {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.100"></a>
-<span class="sourceLineNo">101</span>  }<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      throws RpcThrottlingException {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    Pattern[] patterns =<a name="line.110"></a>
-<span class="sourceLineNo">111</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.111"></a>
-<span class="sourceLineNo">112</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.112"></a>
-<span class="sourceLineNo">113</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.113"></a>
+<span class="sourceLineNo">042</span>  private static final String MSG_WAIT = " - wait ";<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>  private long waitInterval;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>  private Type type;<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>  public RpcThrottlingException(String msg) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    super(msg);<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>    // Dirty workaround to get the information after<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      if (index &gt;= 0) {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.55"></a>
+<span class="sourceLineNo">056</span>        type = Type.values()[i];<a name="line.56"></a>
+<span class="sourceLineNo">057</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>        break;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    super(msg);<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    this.waitInterval = waitInterval;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    this.type = type;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  }<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>  public Type getType() {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    return this.type;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>  public long getWaitInterval() {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    return this.waitInterval;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>  }<a name="line.75"></a>
+<span class="sourceLineNo">076</span><a name="line.76"></a>
+<span class="sourceLineNo">077</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      RpcThrottlingException {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      throws RpcThrottlingException {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<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 static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      throws RpcThrottlingException {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<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 static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      throws RpcThrottlingException {<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  }<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  public static void throwRequestCapacityUnitExceeded(final long waitInterval)<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      throws RpcThrottlingException {<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    throwThrottlingException(Type.RequestCapacityUnitExceeded, waitInterval);<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 static void throwReadCapacityUnitExceeded(final long waitInterval)<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      throws RpcThrottlingException {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    throwThrottlingException(Type.ReadCapacityUnitExceeded, waitInterval);<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>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      if (m.find()) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        if (i &gt; 0) {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>        }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>        if (i &gt; 1) {<a name="line.122"></a>
-<span class="sourceLineNo">123</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        }<a name="line.124"></a>
-<span class="sourceLineNo">125</span>        return time;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    return -1;<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">115</span>  public static void throwWriteCapacityUnitExceeded(final long waitInterval)<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      throws RpcThrottlingException {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    throwThrottlingException(Type.WriteCapacityUnitExceeded, waitInterval);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  }<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      throws RpcThrottlingException {<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    Pattern[] patterns =<a name="line.127"></a>
+<span class="sourceLineNo">128</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.128"></a>
+<span class="sourceLineNo">129</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.129"></a>
+<span class="sourceLineNo">130</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      if (m.find()) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>        if (i &gt; 0) {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>        }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>        if (i &gt; 1) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.140"></a>
+<span class="sourceLineNo">141</span>        }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        return time;<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><a name="line.145"></a>
+<span class="sourceLineNo">146</span>    return -1;<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>
 
 
 
index d589905..7accbf5 100644 (file)
 <span class="sourceLineNo">029</span>  @InterfaceAudience.Public<a name="line.29"></a>
 <span class="sourceLineNo">030</span>  public enum Type {<a name="line.30"></a>
 <span class="sourceLineNo">031</span>    NumRequestsExceeded, RequestSizeExceeded, NumReadRequestsExceeded, NumWriteRequestsExceeded,<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded,<a name="line.32"></a>
-<span class="sourceLineNo">033</span>  }<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>  private static final String[] MSG_TYPE =<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.36"></a>
-<span class="sourceLineNo">037</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.37"></a>
-<span class="sourceLineNo">038</span>        "write size limit exceeded", "read size limit exceeded", };<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>  private static final String MSG_WAIT = " - wait ";<a name="line.40"></a>
+<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded, RequestCapacityUnitExceeded, ReadCapacityUnitExceeded,<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    WriteCapacityUnitExceeded<a name="line.33"></a>
+<span class="sourceLineNo">034</span>  }<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>  private static final String[] MSG_TYPE =<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.37"></a>
+<span class="sourceLineNo">038</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.38"></a>
+<span class="sourceLineNo">039</span>        "write size limit exceeded", "read size limit exceeded", "request capacity unit exceeded",<a name="line.39"></a>
+<span class="sourceLineNo">040</span>        "read capacity unit exceeded", "write capacity unit exceeded" };<a name="line.40"></a>
 <span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>  private long waitInterval;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>  private Type type;<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>  public RpcThrottlingException(String msg) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    super(msg);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>    // Dirty workaround to get the information after<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      if (index &gt;= 0) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.53"></a>
-<span class="sourceLineNo">054</span>        type = Type.values()[i];<a name="line.54"></a>
-<span class="sourceLineNo">055</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>        break;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      }<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>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    super(msg);<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    this.waitInterval = waitInterval;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    this.type = type;<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>  public Type getType() {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    return this.type;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>  }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>  public long getWaitInterval() {<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    return this.waitInterval;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      RpcThrottlingException {<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<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>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      throws RpcThrottlingException {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  }<a name="line.83"></a>
-<span class="sourceLineNo">084</span><a name="line.84"></a>
-<span class="sourceLineNo">085</span>  public static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      throws RpcThrottlingException {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<a name="line.87"></a>
-<span class="sourceLineNo">088</span>  }<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>  public static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      throws RpcThrottlingException {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.100"></a>
-<span class="sourceLineNo">101</span>  }<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      throws RpcThrottlingException {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    Pattern[] patterns =<a name="line.110"></a>
-<span class="sourceLineNo">111</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.111"></a>
-<span class="sourceLineNo">112</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.112"></a>
-<span class="sourceLineNo">113</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.113"></a>
+<span class="sourceLineNo">042</span>  private static final String MSG_WAIT = " - wait ";<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>  private long waitInterval;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>  private Type type;<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>  public RpcThrottlingException(String msg) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    super(msg);<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>    // Dirty workaround to get the information after<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      if (index &gt;= 0) {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.55"></a>
+<span class="sourceLineNo">056</span>        type = Type.values()[i];<a name="line.56"></a>
+<span class="sourceLineNo">057</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>        break;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    super(msg);<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    this.waitInterval = waitInterval;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    this.type = type;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  }<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>  public Type getType() {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    return this.type;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>  public long getWaitInterval() {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    return this.waitInterval;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>  }<a name="line.75"></a>
+<span class="sourceLineNo">076</span><a name="line.76"></a>
+<span class="sourceLineNo">077</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      RpcThrottlingException {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      throws RpcThrottlingException {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<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 static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      throws RpcThrottlingException {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<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 static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      throws RpcThrottlingException {<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  }<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  public static void throwRequestCapacityUnitExceeded(final long waitInterval)<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      throws RpcThrottlingException {<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    throwThrottlingException(Type.RequestCapacityUnitExceeded, waitInterval);<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 static void throwReadCapacityUnitExceeded(final long waitInterval)<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      throws RpcThrottlingException {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    throwThrottlingException(Type.ReadCapacityUnitExceeded, waitInterval);<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>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      if (m.find()) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        if (i &gt; 0) {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>        }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>        if (i &gt; 1) {<a name="line.122"></a>
-<span class="sourceLineNo">123</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        }<a name="line.124"></a>
-<span class="sourceLineNo">125</span>        return time;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    return -1;<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">115</span>  public static void throwWriteCapacityUnitExceeded(final long waitInterval)<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      throws RpcThrottlingException {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    throwThrottlingException(Type.WriteCapacityUnitExceeded, waitInterval);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  }<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      throws RpcThrottlingException {<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    Pattern[] patterns =<a name="line.127"></a>
+<span class="sourceLineNo">128</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.128"></a>
+<span class="sourceLineNo">129</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.129"></a>
+<span class="sourceLineNo">130</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      if (m.find()) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>        if (i &gt; 0) {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>        }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>        if (i &gt; 1) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.140"></a>
+<span class="sourceLineNo">141</span>        }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        return time;<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><a name="line.145"></a>
+<span class="sourceLineNo">146</span>    return -1;<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>
 
 
 
index 1770474..1fa3ff8 100644 (file)
--- a/book.html
+++ b/book.html
@@ -41371,7 +41371,7 @@ org/apache/hadoop/hbase/security/access/AccessControlClient.revoke:(Lorg/apache/
 <div id="footer">
 <div id="footer-text">
 Version 3.0.0-SNAPSHOT<br>
-Last updated 2018-12-13 14:33:11 UTC
+Last updated 2018-12-14 14:33:01 UTC
 </div>
 </div>
 </body>
index 7b63b97..e359e60 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Bulk Loads in Apache HBase (TM)
@@ -316,7 +316,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index b825b03..36a3dba 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Checkstyle Results</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
 <td>3819</td>
 <td>0</td>
 <td>0</td>
-<td>14728</td></tr></table></div>
+<td>14730</td></tr></table></div>
 <div class="section">
 <h2><a name="Files"></a>Files</h2>
 <table border="0" class="table table-striped">
 <td><a href="#org.apache.hadoop.hbase.regionserver.StoreScanner.java">org/apache/hadoop/hbase/regionserver/StoreScanner.java</a></td>
 <td>0</td>
 <td>0</td>
-<td>21</td></tr>
+<td>23</td></tr>
 <tr class="b">
 <td><a href="#org.apache.hadoop.hbase.regionserver.StoreUtils.java">org/apache/hadoop/hbase/regionserver/StoreUtils.java</a></td>
 <td>0</td>
 <ul>
 <li>max: <tt>&quot;100&quot;</tt></li>
 <li>ignorePattern: <tt>&quot;^package.*|^import.*|a href|href|http://|https://|ftp://|org.apache.thrift.|com.google.protobuf.|hbase.protobuf.generated&quot;</tt></li></ul></td>
-<td>1424</td>
+<td>1426</td>
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td></tr>
 <tr class="b">
 <td></td>
 <td>707</td></tr>
 <tr class="a">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
+<td>sizes</td>
+<td>LineLength</td>
+<td>Line is longer than 100 characters (found 113).</td>
+<td>811</td></tr>
+<tr class="b">
+<td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>coding</td>
 <td>InnerAssignment</td>
 <td>Inner assignments should be avoided.</td>
-<td>814</td></tr>
+<td>818</td></tr>
+<tr class="a">
+<td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
+<td>sizes</td>
+<td>LineLength</td>
+<td>Line is longer than 100 characters (found 116).</td>
+<td>836</td></tr>
 <tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>coding</td>
 <td>InnerAssignment</td>
 <td>Inner assignments should be avoided.</td>
-<td>835</td></tr>
+<td>843</td></tr>
 <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>955</td></tr>
+<td>963</td></tr>
 <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>956</td></tr>
+<td>964</td></tr>
 <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>957</td></tr>
+<td>965</td></tr>
 <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>958</td></tr>
+<td>966</td></tr>
 <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>974</td></tr>
+<td>982</td></tr>
 <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>976</td></tr>
+<td>984</td></tr>
 <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>1069</td></tr>
+<td>1077</td></tr>
 <tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'if' construct must use '{}'s.</td>
-<td>1073</td></tr>
+<td>1081</td></tr>
 <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>1110</td></tr>
+<td>1118</td></tr>
 <tr class="b">
 <td><img src="images/icon_error_sml.gif" alt="" />&#160;Error</td>
 <td>blocks</td>
 <td>NeedBraces</td>
 <td>'for' construct must use '{}'s.</td>
-<td>1112</td></tr></table></div>
+<td>1120</td></tr></table></div>
 <div class="section">
 <h3 id="org.apache.hadoop.hbase.regionserver.StoreUtils.java">org/apache/hadoop/hbase/regionserver/StoreUtils.java</h3>
 <table border="0" class="table table-striped">
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 4cdf785..e4df6dd 100644 (file)
@@ -26,7 +26,7 @@ under the License.
     <copyright>&#169;2007 - 2018 The Apache Software Foundation</copyright>
     <item>
       <title>File: 3819,
-             Errors: 14728,
+             Errors: 14730,
              Warnings: 0,
              Infos: 0
       </title>
@@ -14447,7 +14447,7 @@ under the License.
                   0
                 </td>
                 <td>
-                  21
+                  23
                 </td>
               </tr>
                           <tr>
index 17ee4bc..433c580 100644 (file)
--- 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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Code of Conduct Policy
@@ -385,7 +385,7 @@ email to <a class="externalLink" href="mailto:private@hbase.apache.org">the priv
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 9cd4449..5ae3671 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependencies</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 70d3224..0c4f930 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Reactor Dependency Convergence</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 672080f..cf3ac61 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Dependency Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 473f9fc..33d9f72 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Dependency Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 2044dc9..c285e85 100644 (file)
 <!--   -->
 </a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#date">date</a></code></td>
-<td class="colLast"><code>"Thu Dec 13 14:43:55 UTC 2018"</code></td>
+<td class="colLast"><code>"Fri Dec 14 14:44:11 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="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td><code><a href="org/apache/hadoop/hbase/Version.html#srcChecksum">srcChecksum</a></code></td>
-<td class="colLast"><code>"2d03196b76e1858daf2dd9c5c30b9310"</code></td>
+<td class="colLast"><code>"a4dd87b6f708183c1f48d23f79345f1a"</code></td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a name="org.apache.hadoop.hbase.Version.url">
index 68dbcc5..2a04e97 100644 (file)
@@ -114800,12 +114800,16 @@ service.</div>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
@@ -114822,6 +114826,8 @@ service.</div>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/client/HBaseAdmin.TableFuture.TableWaitForStateCallable.html#throwTimeoutException-long-">throwTimeoutException(long)</a></span> - Method in class org.apache.hadoop.hbase.client.<a href="org/apache/hadoop/hbase/client/HBaseAdmin.TableFuture.TableWaitForStateCallable.html" title="class in org.apache.hadoop.hbase.client">HBaseAdmin.TableFuture.TableWaitForStateCallable</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded(long)</a></span> - Static method in exception org.apache.hadoop.hbase.quotas.<a href="org/apache/hadoop/hbase/quotas/ThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">ThrottlingException</a></dt>
index 06e7f45..0761683 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.backup.<a href="../../../../../org/apache/hadoop/hbase/backup/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.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>
-<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>
 </ul>
 </li>
 </ul>
index 54ae119..f24d0a1 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/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/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/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/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/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/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/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/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/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/CompactionState.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactionState</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.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/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/Durability.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Durability</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/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/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/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/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/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/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/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/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/Consistency.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">Consistency</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/RequestController.ReturnCode.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">RequestController.ReturnCode</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/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/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/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/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/CompactType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">CompactType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.client.<a href="../../../../../org/apache/hadoop/hbase/client/MasterSwitchType.html" title="enum in org.apache.hadoop.hbase.client"><span class="typeNameLink">MasterSwitchType</span></a></li>
 </ul>
 </li>
 </ul>
index ab55397..66fec8b 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/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/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/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/FuzzyRowFilter.SatisfiesCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FuzzyRowFilter.SatisfiesCode</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/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/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/RegexStringComparator.EngineType.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">RegexStringComparator.EngineType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/Filter.ReturnCode.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">Filter.ReturnCode</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.filter.<a href="../../../../../org/apache/hadoop/hbase/filter/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/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/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/FilterList.Operator.html" title="enum in org.apache.hadoop.hbase.filter"><span class="typeNameLink">FilterList.Operator</span></a></li>
 </ul>
 </li>
 </ul>
index cf83a92..b481b18 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.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/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/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/BlockPriority.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockPriority</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.BlockCategory.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">BlockType.BlockCategory</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/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/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/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/HFileBlock.Writer.State.html" title="enum in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">HFileBlock.Writer.State</span></a></li>
 </ul>
 </li>
 </ul>
index c12ae36..91a2ed4 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/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/CallEvent.Type.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">CallEvent.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/BufferCallBeforeInitHandler.BufferCallAction.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">BufferCallBeforeInitHandler.BufferCallAction</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.ipc.<a href="../../../../../org/apache/hadoop/hbase/ipc/MetricsHBaseServerSourceFactoryImpl.SourceStorage.html" title="enum in org.apache.hadoop.hbase.ipc"><span class="typeNameLink">MetricsHBaseServerSourceFactoryImpl.SourceStorage</span></a></li>
 </ul>
 </li>
 </ul>
index 81c504b..a07a1d8 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.mapreduce.<a href="../../../../../org/apache/hadoop/hbase/mapreduce/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/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>
+<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>
 </ul>
 </li>
 </ul>
index c03b1ea..392e0b8 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.master.<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/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/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>
 <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/MasterRpcServices.BalanceSwitchMode.html" title="enum in org.apache.hadoop.hbase.master"><span class="typeNameLink">MasterRpcServices.BalanceSwitchMode</span></a></li>
 </ul>
index 59af371..8b11e23 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/ServerProcedureInterface.ServerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">ServerProcedureInterface.ServerOperationType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">PeerProcedureInterface.PeerOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/MetaProcedureInterface.MetaOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">MetaProcedureInterface.MetaOperationType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/TableProcedureInterface.TableOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">TableProcedureInterface.TableOperationType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.master.procedure.<a href="../../../../../../org/apache/hadoop/hbase/master/procedure/PeerProcedureInterface.PeerOperationType.html" title="enum in org.apache.hadoop.hbase.master.procedure"><span class="typeNameLink">PeerProcedureInterface.PeerOperationType</span></a></li>
 </ul>
 </li>
 </ul>
index 7b435d2..4b549da 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/TaskMonitor.TaskFilter.TaskType.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">TaskMonitor.TaskFilter.TaskType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.monitoring.<a href="../../../../../org/apache/hadoop/hbase/monitoring/MonitoredTask.State.html" title="enum in org.apache.hadoop.hbase.monitoring"><span class="typeNameLink">MonitoredTask.State</span></a></li>
 </ul>
 </li>
 </ul>
index 75945f9..87856d5 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/Cell.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Cell.Type</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/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/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/HealthChecker.HealthCheckerExitStatus.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HealthChecker.HealthCheckerExitStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/KeyValue.Type.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">KeyValue.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/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/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/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/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/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/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/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/Coprocessor.State.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">Coprocessor.State</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/MemoryCompactionPolicy.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">MemoryCompactionPolicy</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.<a href="../../../../org/apache/hadoop/hbase/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/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/HConstants.OperationStatusCode.html" title="enum in org.apache.hadoop.hbase"><span class="typeNameLink">HConstants.OperationStatusCode</span></a></li>
 </ul>
 </li>
 </ul>
index 4f8749a..f25572f 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/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/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/StateMachineProcedure.Flow.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">StateMachineProcedure.Flow</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/Procedure.LockState.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">Procedure.LockState</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.procedure2.<a href="../../../../../org/apache/hadoop/hbase/procedure2/LockType.html" title="enum in org.apache.hadoop.hbase.procedure2"><span class="typeNameLink">LockType</span></a></li>
 </ul>
 </li>
 </ul>
index 953c57b..b69ee70 100644 (file)
@@ -152,12 +152,21 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#NumWriteRequestsExceeded">NumWriteRequestsExceeded</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#ReadCapacityUnitExceeded">ReadCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#ReadSizeExceeded">ReadSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#RequestCapacityUnitExceeded">RequestCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#RequestSizeExceeded">RequestSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#WriteCapacityUnitExceeded">WriteCapacityUnitExceeded</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#WriteSizeExceeded">WriteSizeExceeded</a></span></code>&nbsp;</td>
 </tr>
 </table>
@@ -265,12 +274,39 @@ the order they are declared.</div>
 <a name="ReadSizeExceeded">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>ReadSizeExceeded</h4>
 <pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">ReadSizeExceeded</a></pre>
 </li>
 </ul>
+<a name="RequestCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RequestCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">RequestCapacityUnitExceeded</a></pre>
+</li>
+</ul>
+<a name="ReadCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ReadCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.32">ReadCapacityUnitExceeded</a></pre>
+</li>
+</ul>
+<a name="WriteCapacityUnitExceeded">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>WriteCapacityUnitExceeded</h4>
+<pre>public static final&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html#line.33">WriteCapacityUnitExceeded</a></pre>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
index 9fb519b..7b674c4 100644 (file)
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9};
+var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -255,22 +255,34 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 </tr>
 <tr id="i5" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr id="i6" class="altColor">
 <td class="colFirst"><code>static void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr id="i7" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>private static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwThrottlingException-org.apache.hadoop.hbase.quotas.RpcThrottlingException.Type-long-">throwThrottlingException</a></span>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
                         long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>private static long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#timeFromString-java.lang.String-">timeFromString</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;timeDiff)</code>&nbsp;</td>
 </tr>
@@ -309,7 +321,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>MSG_TYPE</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.35">MSG_TYPE</a></pre>
+<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.36">MSG_TYPE</a></pre>
 </li>
 </ul>
 <a name="MSG_WAIT">
@@ -318,7 +330,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>MSG_WAIT</h4>
-<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.40">MSG_WAIT</a></pre>
+<pre>private static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.42">MSG_WAIT</a></pre>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.quotas.RpcThrottlingException.MSG_WAIT">Constant Field Values</a></dd>
@@ -331,7 +343,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>waitInterval</h4>
-<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.42">waitInterval</a></pre>
+<pre>private&nbsp;long <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.44">waitInterval</a></pre>
 </li>
 </ul>
 <a name="type">
@@ -340,7 +352,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockListLast">
 <li class="blockList">
 <h4>type</h4>
-<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.43">type</a></pre>
+<pre>private&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.45">type</a></pre>
 </li>
 </ul>
 </li>
@@ -357,7 +369,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>RpcThrottlingException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.45">RpcThrottlingException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.47">RpcThrottlingException</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
 </li>
 </ul>
 <a name="RpcThrottlingException-org.apache.hadoop.hbase.quotas.RpcThrottlingException.Type-long-java.lang.String-">
@@ -366,7 +378,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockListLast">
 <li class="blockList">
 <h4>RpcThrottlingException</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.61">RpcThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.63">RpcThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
                               long&nbsp;waitInterval,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
 </li>
@@ -385,7 +397,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>getType</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.67">getType</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.69">getType</a>()</pre>
 </li>
 </ul>
 <a name="getWaitInterval--">
@@ -394,7 +406,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>getWaitInterval</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.71">getWaitInterval</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.73">getWaitInterval</a>()</pre>
 </li>
 </ul>
 <a name="throwNumRequestsExceeded-long-">
@@ -403,7 +415,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.75">throwNumRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.77">throwNumRequestsExceeded</a>(long&nbsp;waitInterval)
                                      throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -417,7 +429,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwRequestSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.80">throwRequestSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.82">throwRequestSizeExceeded</a>(long&nbsp;waitInterval)
                                      throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -431,7 +443,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumReadRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.85">throwNumReadRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.87">throwNumReadRequestsExceeded</a>(long&nbsp;waitInterval)
                                          throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -445,7 +457,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwNumWriteRequestsExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.90">throwNumWriteRequestsExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.92">throwNumWriteRequestsExceeded</a>(long&nbsp;waitInterval)
                                           throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -459,7 +471,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwWriteSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.95">throwWriteSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.97">throwWriteSizeExceeded</a>(long&nbsp;waitInterval)
                                    throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -473,7 +485,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockList">
 <li class="blockList">
 <h4>throwReadSizeExceeded</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.99">throwReadSizeExceeded</a>(long&nbsp;waitInterval)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.101">throwReadSizeExceeded</a>(long&nbsp;waitInterval)
                                   throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -481,13 +493,55 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 </dl>
 </li>
 </ul>
+<a name="throwRequestCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>throwRequestCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.105">throwRequestCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                             throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="throwReadCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>throwReadCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.110">throwReadCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                          throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="throwWriteCapacityUnitExceeded-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>throwWriteCapacityUnitExceeded</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.115">throwWriteCapacityUnitExceeded</a>(long&nbsp;waitInterval)
+                                           throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></code></dd>
+</dl>
+</li>
+</ul>
 <a name="throwThrottlingException-org.apache.hadoop.hbase.quotas.RpcThrottlingException.Type-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>throwThrottlingException</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.103">throwThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.120">throwThrottlingException</a>(<a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas">RpcThrottlingException.Type</a>&nbsp;type,
                                              long&nbsp;waitInterval)
                                       throws <a href="../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html" title="class in org.apache.hadoop.hbase.quotas">RpcThrottlingException</a></pre>
 <dl>
@@ -502,7 +556,7 @@ extends <a href="../../../../../org/apache/hadoop/hbase/HBaseIOException.html" t
 <ul class="blockListLast">
 <li class="blockList">
 <h4>timeFromString</h4>
-<pre>private static&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.109">timeFromString</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;timeDiff)</pre>
+<pre>private static&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#line.126">timeFromString</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;timeDiff)</pre>
 </li>
 </ul>
 </li>
index 451c37a..733287d 100644 (file)
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadCapacityUnitExceeded-long-">throwReadCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwReadSizeExceeded-long-">throwReadSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestCapacityUnitExceeded-long-">throwRequestCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwRequestSizeExceeded-long-">throwRequestSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteCapacityUnitExceeded-long-">throwWriteCapacityUnitExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><span class="typeNameLabel">RpcThrottlingException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/quotas/RpcThrottlingException.html#throwWriteSizeExceeded-long-">throwWriteSizeExceeded</a></span>(long&nbsp;waitInterval)</code>&nbsp;</td>
 </tr>
 </tbody>
index ead5e90..015ba48 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/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/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/QuotaScope.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaScope</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/QuotaType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">QuotaType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/SpaceViolationPolicy.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">SpaceViolationPolicy</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/ThrottleType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">ThrottleType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/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/RpcThrottlingException.Type.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">RpcThrottlingException.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.quotas.<a href="../../../../../org/apache/hadoop/hbase/quotas/OperationQuota.OperationType.html" title="enum in org.apache.hadoop.hbase.quotas"><span class="typeNameLink">OperationQuota.OperationType</span></a></li>
 </ul>
 </li>
 </ul>
index 8bdd840..b8306a6 100644 (file)
@@ -1589,7 +1589,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>trySkipToNextColumn</h4>
-<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.824">trySkipToNextColumn</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)
+<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.828">trySkipToNextColumn</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)
                                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">See <a href="../../../../../org/apache/hadoop/hbase/regionserver/StoreScanner.html#trySkipToNextRow-org.apache.hadoop.hbase.Cell-"><code>trySkipToNextRow(Cell)</code></a></div>
 <dl>
@@ -1608,7 +1608,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>getReadPoint</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.846">getReadPoint</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.854">getReadPoint</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html#getReadPoint--">getReadPoint</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">ChangedReadersObserver</a></code></dd>
@@ -1623,7 +1623,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>clearAndClose</h4>
-<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.850">clearAndClose</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners)</pre>
+<pre>private static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.858">clearAndClose</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners)</pre>
 </li>
 </ul>
 <a name="updateReaders-java.util.List-java.util.List-">
@@ -1632,7 +1632,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>updateReaders</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.859">updateReaders</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.867">updateReaders</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/HStoreFile.html" title="class in org.apache.hadoop.hbase.regionserver">HStoreFile</a>&gt;&nbsp;sfs,
                           <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;memStoreScanners)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChangedReadersObserver.html#updateReaders-java.util.List-java.util.List-">ChangedReadersObserver</a></code></span></div>
@@ -1654,7 +1654,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>reopenAfterFlush</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.891">reopenAfterFlush</a>()
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.899">reopenAfterFlush</a>()
                                   throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1670,7 +1670,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>resetQueryMatcher</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.938">resetQueryMatcher</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;lastTopKey)</pre>
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.946">resetQueryMatcher</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;lastTopKey)</pre>
 </li>
 </ul>
 <a name="checkScanOrder-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.CellComparator-">
@@ -1679,7 +1679,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>checkScanOrder</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.960">checkScanOrder</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;prevKV,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.968">checkScanOrder</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;prevKV,
                               <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv,
                               <a href="../../../../../org/apache/hadoop/hbase/CellComparator.html" title="interface in org.apache.hadoop.hbase">CellComparator</a>&nbsp;comparator)
                        throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -1700,7 +1700,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>seekToNextRow</h4>
-<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.968">seekToNextRow</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)
+<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.976">seekToNextRow</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;c)
                          throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <dl>
 <dt><span class="throwsLabel">Throws:</span></dt>
@@ -1714,7 +1714,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>seekAsDirection</h4>
-<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.978">seekAsDirection</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)
+<pre>protected&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.986">seekAsDirection</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Do a reseek in a normal StoreScanner(scan forward)</div>
 <dl>
@@ -1733,7 +1733,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>reseek</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.984">reseek</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.992">reseek</a>(<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)
                throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#reseek-org.apache.hadoop.hbase.Cell-">KeyValueScanner</a></code></span></div>
 <div class="block">Reseek the scanner at or after the specified KeyValue.
@@ -1758,7 +1758,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>trySwitchToStreamRead</h4>
-<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.995">trySwitchToStreamRead</a>()</pre>
+<pre>void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1003">trySwitchToStreamRead</a>()</pre>
 </li>
 </ul>
 <a name="checkFlushed--">
@@ -1767,7 +1767,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>checkFlushed</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1045">checkFlushed</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1053">checkFlushed</a>()</pre>
 </li>
 </ul>
 <a name="parallelSeek-java.util.List-org.apache.hadoop.hbase.Cell-">
@@ -1776,7 +1776,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>parallelSeek</h4>
-<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1071">parallelSeek</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners,
+<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1079">parallelSeek</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;? extends <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;scanners,
                           <a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)
                    throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Seek storefiles in parallel to optimize IO latency as much as possible</div>
@@ -1795,7 +1795,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>getAllScannersForTesting</h4>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1107">getAllScannersForTesting</a>()</pre>
+<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a>&gt;&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1115">getAllScannersForTesting</a>()</pre>
 <div class="block">Used in testing.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1809,7 +1809,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>enableLazySeekGlobally</h4>
-<pre>static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1117">enableLazySeekGlobally</a>(boolean&nbsp;enable)</pre>
+<pre>static&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1125">enableLazySeekGlobally</a>(boolean&nbsp;enable)</pre>
 </li>
 </ul>
 <a name="getEstimatedNumberOfKvsScanned--">
@@ -1818,7 +1818,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>getEstimatedNumberOfKvsScanned</h4>
-<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1124">getEstimatedNumberOfKvsScanned</a>()</pre>
+<pre>public&nbsp;long&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1132">getEstimatedNumberOfKvsScanned</a>()</pre>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The estimated number of KVs seen by this scanner (includes some skipped KVs).</dd>
@@ -1831,7 +1831,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockList">
 <li class="blockList">
 <h4>getNextIndexedKey</h4>
-<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1129">getNextIndexedKey</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1137">getNextIndexedKey</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html#getNextIndexedKey--">getNextIndexedKey</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValueScanner.html" title="interface in org.apache.hadoop.hbase.regionserver">KeyValueScanner</a></code></dd>
@@ -1850,7 +1850,7 @@ implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/KeyValue
 <ul class="blockListLast">
 <li class="blockList">
 <h4>shipped</h4>
-<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1134">shipped</a>()
+<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/StoreScanner.html#line.1142">shipped</a>()
              throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/Shipper.html#shipped--">Shipper</a></code></span></div>
 <div class="block">Called after a batch of rows scanned and set to be returned to client. Any in between cleanup
index 3033854..b8ec2f4 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/TimeRangeTracker.Type.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">TimeRangeTracker.Type</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/Region.Operation.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Region.Operation</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/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/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/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">CompactingMemStore.IndexType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/SplitLogWorker.TaskExecutor.Status.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">SplitLogWorker.TaskExecutor.Status</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/ScannerContext.NextState.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.NextState</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScannerContext.LimitScope.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScannerContext.LimitScope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/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/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">MetricsRegionServerSourceFactoryImpl.FactoryStorage</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ScanType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ScanType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/HRegion.FlushResult.Result.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">HRegion.FlushResult.Result</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/FlushType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">FlushType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">ChunkCreator.ChunkType</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.<a href="../../../../../org/apache/hadoop/hbase/regionserver/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/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>
index b377318..23060c2 100644 (file)
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.DropDeletesInOutput.html" title="enum in org.apache.hadoop.hbase.regionserver.querymatcher"><span class="typeNameLink">StripeCompactionScanQueryMatcher.DropDeletesInOutput</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.regionserver.querymatcher.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/querymatcher/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/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>
 </ul>
 </li>
 </ul>
index feee307..7eedc5c 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/RingBufferTruck.Type.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">RingBufferTruck.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.WALHdrResult.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">ProtobufLogReader.WALHdrResult</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/RingBufferTruck.Type.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">RingBufferTruck.Type</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.regionserver.wal.<a href="../../../../../../org/apache/hadoop/hbase/regionserver/wal/CompressionContext.DictionaryIndex.html" title="enum in org.apache.hadoop.hbase.regionserver.wal"><span class="typeNameLink">CompressionContext.DictionaryIndex</span></a></li>
 </ul>
 </li>
index 30c4e73..cd3870f 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.replication.regionserver.<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/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>
+<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>
 </ul>
 </li>
 </ul>
index f2a456c..aa0564c 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/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/Permission.Scope.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Scope</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/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/AccessController.OpType.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessController.OpType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Permission.Action</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.access.<a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlFilter.Strategy.html" title="enum in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">AccessControlFilter.Strategy</span></a></li>
 </ul>
 </li>
 </ul>
index 13f949c..6ef281d 100644 (file)
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
 <li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/SaslUtil.QualityOfProtection.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslUtil.QualityOfProtection</span></a></li>
-<li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/SaslStatus.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">SaslStatus</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.security.<a href="../../../../../org/apache/hadoop/hbase/security/AuthMethod.html" title="enum in org.apache.hadoop.hbase.security"><span class="typeNameLink">AuthMethod</span></a></li>
 </ul>
 </li>
 </ul>
index 81a90a9..2cef8bd 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.thrift.<a href="../../../../../org/apache/hadoop/hbase/thrift/MetricsThriftServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">MetricsThriftServerSourceFactoryImpl.FactoryStorage</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="../../../../../org/apache/hadoop/hbase/thrift/ThriftServerRunner.ImplType.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">ThriftServerRunner.ImplType</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.thrift.<a href="../../../../../org/apache/hadoop/hbase/thrift/ThriftMetrics.ThriftServerType.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">ThriftMetrics.ThriftServerType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.thrift.<a href="../../../../../org/apache/hadoop/hbase/thrift/MetricsThriftServerSourceFactoryImpl.FactoryStorage.html" title="enum in org.apache.hadoop.hbase.thrift"><span class="typeNameLink">MetricsThriftServerSourceFactoryImpl.FactoryStorage</span></a></li>
 </ul>
 </li>
 </ul>
index b6fc011..eb6e962 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 <li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/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/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/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/Bytes.LexicographicalComparerHolder.PureJavaComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.PureJavaComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/ChecksumType.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">ChecksumType</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/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/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/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/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/Bytes.LexicographicalComparerHolder.UnsafeComparer.html" title="enum in org.apache.hadoop.hbase.util"><span class="typeNameLink">Bytes.LexicographicalComparerHolder.UnsafeComparer</span></a> (implements org.apache.hadoop.hbase.util.<a href="../../../../../org/apache/hadoop/hbase/util/Bytes.Comparer.html" title="interface in org.apache.hadoop.hbase.util">Bytes.Comparer</a>&lt;T&gt;)</li>
 </ul>
 </li>
 </ul>
index bcb1724..c6caa9b 100644 (file)
 <ul>
 <li type="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
 <ul>
-<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">RegionGroupingProvider.Strategies</span></a></li>
 <li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/WALFactory.Providers.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">WALFactory.Providers</span></a></li>
+<li type="circle">org.apache.hadoop.hbase.wal.<a href="../../../../../org/apache/hadoop/hbase/wal/RegionGroupingProvider.Strategies.html" title="enum in org.apache.hadoop.hbase.wal"><span class="typeNameLink">RegionGroupingProvider.Strategies</span></a></li>
 </ul>
 </li>
 </ul>
index 7e3944d..06eb753 100644 (file)
@@ -18,9 +18,9 @@
 <span class="sourceLineNo">010</span>  public static final String version = "3.0.0-SNAPSHOT";<a name="line.10"></a>
 <span class="sourceLineNo">011</span>  public static final String revision = "";<a name="line.11"></a>
 <span class="sourceLineNo">012</span>  public static final String user = "jenkins";<a name="line.12"></a>
-<span class="sourceLineNo">013</span>  public static final String date = "Thu Dec 13 14:43:55 UTC 2018";<a name="line.13"></a>
+<span class="sourceLineNo">013</span>  public static final String date = "Fri Dec 14 14:44:11 UTC 2018";<a name="line.13"></a>
 <span class="sourceLineNo">014</span>  public static final String url = "git://jenkins-websites1.apache.org/home/jenkins/jenkins-slave/workspace/hbase_generate_website/hbase";<a name="line.14"></a>
-<span class="sourceLineNo">015</span>  public static final String srcChecksum = "2d03196b76e1858daf2dd9c5c30b9310";<a name="line.15"></a>
+<span class="sourceLineNo">015</span>  public static final String srcChecksum = "a4dd87b6f708183c1f48d23f79345f1a";<a name="line.15"></a>
 <span class="sourceLineNo">016</span>}<a name="line.16"></a>
 
 
index d589905..7accbf5 100644 (file)
 <span class="sourceLineNo">029</span>  @InterfaceAudience.Public<a name="line.29"></a>
 <span class="sourceLineNo">030</span>  public enum Type {<a name="line.30"></a>
 <span class="sourceLineNo">031</span>    NumRequestsExceeded, RequestSizeExceeded, NumReadRequestsExceeded, NumWriteRequestsExceeded,<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded,<a name="line.32"></a>
-<span class="sourceLineNo">033</span>  }<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>  private static final String[] MSG_TYPE =<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.36"></a>
-<span class="sourceLineNo">037</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.37"></a>
-<span class="sourceLineNo">038</span>        "write size limit exceeded", "read size limit exceeded", };<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>  private static final String MSG_WAIT = " - wait ";<a name="line.40"></a>
+<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded, RequestCapacityUnitExceeded, ReadCapacityUnitExceeded,<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    WriteCapacityUnitExceeded<a name="line.33"></a>
+<span class="sourceLineNo">034</span>  }<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>  private static final String[] MSG_TYPE =<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.37"></a>
+<span class="sourceLineNo">038</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.38"></a>
+<span class="sourceLineNo">039</span>        "write size limit exceeded", "read size limit exceeded", "request capacity unit exceeded",<a name="line.39"></a>
+<span class="sourceLineNo">040</span>        "read capacity unit exceeded", "write capacity unit exceeded" };<a name="line.40"></a>
 <span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>  private long waitInterval;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>  private Type type;<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>  public RpcThrottlingException(String msg) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    super(msg);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>    // Dirty workaround to get the information after<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      if (index &gt;= 0) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.53"></a>
-<span class="sourceLineNo">054</span>        type = Type.values()[i];<a name="line.54"></a>
-<span class="sourceLineNo">055</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>        break;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      }<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>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    super(msg);<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    this.waitInterval = waitInterval;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    this.type = type;<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>  public Type getType() {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    return this.type;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>  }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>  public long getWaitInterval() {<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    return this.waitInterval;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      RpcThrottlingException {<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<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>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      throws RpcThrottlingException {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  }<a name="line.83"></a>
-<span class="sourceLineNo">084</span><a name="line.84"></a>
-<span class="sourceLineNo">085</span>  public static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      throws RpcThrottlingException {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<a name="line.87"></a>
-<span class="sourceLineNo">088</span>  }<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>  public static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      throws RpcThrottlingException {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.100"></a>
-<span class="sourceLineNo">101</span>  }<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      throws RpcThrottlingException {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    Pattern[] patterns =<a name="line.110"></a>
-<span class="sourceLineNo">111</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.111"></a>
-<span class="sourceLineNo">112</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.112"></a>
-<span class="sourceLineNo">113</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.113"></a>
+<span class="sourceLineNo">042</span>  private static final String MSG_WAIT = " - wait ";<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>  private long waitInterval;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>  private Type type;<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>  public RpcThrottlingException(String msg) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    super(msg);<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>    // Dirty workaround to get the information after<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      if (index &gt;= 0) {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.55"></a>
+<span class="sourceLineNo">056</span>        type = Type.values()[i];<a name="line.56"></a>
+<span class="sourceLineNo">057</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>        break;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    super(msg);<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    this.waitInterval = waitInterval;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    this.type = type;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  }<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>  public Type getType() {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    return this.type;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>  public long getWaitInterval() {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    return this.waitInterval;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>  }<a name="line.75"></a>
+<span class="sourceLineNo">076</span><a name="line.76"></a>
+<span class="sourceLineNo">077</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      RpcThrottlingException {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      throws RpcThrottlingException {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<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 static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      throws RpcThrottlingException {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<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 static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      throws RpcThrottlingException {<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  }<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  public static void throwRequestCapacityUnitExceeded(final long waitInterval)<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      throws RpcThrottlingException {<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    throwThrottlingException(Type.RequestCapacityUnitExceeded, waitInterval);<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 static void throwReadCapacityUnitExceeded(final long waitInterval)<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      throws RpcThrottlingException {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    throwThrottlingException(Type.ReadCapacityUnitExceeded, waitInterval);<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>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      if (m.find()) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        if (i &gt; 0) {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>        }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>        if (i &gt; 1) {<a name="line.122"></a>
-<span class="sourceLineNo">123</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        }<a name="line.124"></a>
-<span class="sourceLineNo">125</span>        return time;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    return -1;<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">115</span>  public static void throwWriteCapacityUnitExceeded(final long waitInterval)<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      throws RpcThrottlingException {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    throwThrottlingException(Type.WriteCapacityUnitExceeded, waitInterval);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  }<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      throws RpcThrottlingException {<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    Pattern[] patterns =<a name="line.127"></a>
+<span class="sourceLineNo">128</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.128"></a>
+<span class="sourceLineNo">129</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.129"></a>
+<span class="sourceLineNo">130</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      if (m.find()) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>        if (i &gt; 0) {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>        }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>        if (i &gt; 1) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.140"></a>
+<span class="sourceLineNo">141</span>        }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        return time;<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><a name="line.145"></a>
+<span class="sourceLineNo">146</span>    return -1;<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>
 
 
 
index d589905..7accbf5 100644 (file)
 <span class="sourceLineNo">029</span>  @InterfaceAudience.Public<a name="line.29"></a>
 <span class="sourceLineNo">030</span>  public enum Type {<a name="line.30"></a>
 <span class="sourceLineNo">031</span>    NumRequestsExceeded, RequestSizeExceeded, NumReadRequestsExceeded, NumWriteRequestsExceeded,<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded,<a name="line.32"></a>
-<span class="sourceLineNo">033</span>  }<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>  private static final String[] MSG_TYPE =<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.36"></a>
-<span class="sourceLineNo">037</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.37"></a>
-<span class="sourceLineNo">038</span>        "write size limit exceeded", "read size limit exceeded", };<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>  private static final String MSG_WAIT = " - wait ";<a name="line.40"></a>
+<span class="sourceLineNo">032</span>    WriteSizeExceeded, ReadSizeExceeded, RequestCapacityUnitExceeded, ReadCapacityUnitExceeded,<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    WriteCapacityUnitExceeded<a name="line.33"></a>
+<span class="sourceLineNo">034</span>  }<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>  private static final String[] MSG_TYPE =<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      new String[] { "number of requests exceeded", "request size limit exceeded",<a name="line.37"></a>
+<span class="sourceLineNo">038</span>        "number of read requests exceeded", "number of write requests exceeded",<a name="line.38"></a>
+<span class="sourceLineNo">039</span>        "write size limit exceeded", "read size limit exceeded", "request capacity unit exceeded",<a name="line.39"></a>
+<span class="sourceLineNo">040</span>        "read capacity unit exceeded", "write capacity unit exceeded" };<a name="line.40"></a>
 <span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>  private long waitInterval;<a name="line.42"></a>
-<span class="sourceLineNo">043</span>  private Type type;<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>  public RpcThrottlingException(String msg) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    super(msg);<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>    // Dirty workaround to get the information after<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      if (index &gt;= 0) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.53"></a>
-<span class="sourceLineNo">054</span>        type = Type.values()[i];<a name="line.54"></a>
-<span class="sourceLineNo">055</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>        break;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      }<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>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    super(msg);<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    this.waitInterval = waitInterval;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    this.type = type;<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>  public Type getType() {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    return this.type;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>  }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>  public long getWaitInterval() {<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    return this.waitInterval;<a name="line.72"></a>
-<span class="sourceLineNo">073</span>  }<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      RpcThrottlingException {<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<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>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      throws RpcThrottlingException {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>  }<a name="line.83"></a>
-<span class="sourceLineNo">084</span><a name="line.84"></a>
-<span class="sourceLineNo">085</span>  public static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      throws RpcThrottlingException {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<a name="line.87"></a>
-<span class="sourceLineNo">088</span>  }<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>  public static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      throws RpcThrottlingException {<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>  }<a name="line.97"></a>
-<span class="sourceLineNo">098</span><a name="line.98"></a>
-<span class="sourceLineNo">099</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.100"></a>
-<span class="sourceLineNo">101</span>  }<a name="line.101"></a>
-<span class="sourceLineNo">102</span><a name="line.102"></a>
-<span class="sourceLineNo">103</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      throws RpcThrottlingException {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    Pattern[] patterns =<a name="line.110"></a>
-<span class="sourceLineNo">111</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.111"></a>
-<span class="sourceLineNo">112</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.112"></a>
-<span class="sourceLineNo">113</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.113"></a>
+<span class="sourceLineNo">042</span>  private static final String MSG_WAIT = " - wait ";<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>  private long waitInterval;<a name="line.44"></a>
+<span class="sourceLineNo">045</span>  private Type type;<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>  public RpcThrottlingException(String msg) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    super(msg);<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>    // Dirty workaround to get the information after<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    // ((RemoteException)e.getCause()).unwrapRemoteException()<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    for (int i = 0; i &lt; MSG_TYPE.length; ++i) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      int index = msg.indexOf(MSG_TYPE[i]);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      if (index &gt;= 0) {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>        String waitTimeStr = msg.substring(index + MSG_TYPE[i].length() + MSG_WAIT.length());<a name="line.55"></a>
+<span class="sourceLineNo">056</span>        type = Type.values()[i];<a name="line.56"></a>
+<span class="sourceLineNo">057</span>        waitInterval = timeFromString(waitTimeStr);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>        break;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    }<a name="line.60"></a>
+<span class="sourceLineNo">061</span>  }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>  public RpcThrottlingException(final Type type, final long waitInterval, final String msg) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    super(msg);<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    this.waitInterval = waitInterval;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    this.type = type;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>  }<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>  public Type getType() {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    return this.type;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>  }<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>  public long getWaitInterval() {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    return this.waitInterval;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>  }<a name="line.75"></a>
+<span class="sourceLineNo">076</span><a name="line.76"></a>
+<span class="sourceLineNo">077</span>  public static void throwNumRequestsExceeded(final long waitInterval) throws<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      RpcThrottlingException {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    throwThrottlingException(Type.NumRequestsExceeded, waitInterval);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>  }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>  public static void throwRequestSizeExceeded(final long waitInterval)<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      throws RpcThrottlingException {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    throwThrottlingException(Type.RequestSizeExceeded, waitInterval);<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 static void throwNumReadRequestsExceeded(final long waitInterval)<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      throws RpcThrottlingException {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    throwThrottlingException(Type.NumReadRequestsExceeded, waitInterval);<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 static void throwNumWriteRequestsExceeded(final long waitInterval)<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      throws RpcThrottlingException {<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    throwThrottlingException(Type.NumWriteRequestsExceeded, waitInterval);<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>  public static void throwWriteSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    throwThrottlingException(Type.WriteSizeExceeded, waitInterval);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>  }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>  public static void throwReadSizeExceeded(final long waitInterval) throws RpcThrottlingException {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    throwThrottlingException(Type.ReadSizeExceeded, waitInterval);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>  }<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>  public static void throwRequestCapacityUnitExceeded(final long waitInterval)<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      throws RpcThrottlingException {<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    throwThrottlingException(Type.RequestCapacityUnitExceeded, waitInterval);<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 static void throwReadCapacityUnitExceeded(final long waitInterval)<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      throws RpcThrottlingException {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    throwThrottlingException(Type.ReadCapacityUnitExceeded, waitInterval);<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>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      if (m.find()) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.118"></a>
-<span class="sourceLineNo">119</span>        if (i &gt; 0) {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.120"></a>
-<span class="sourceLineNo">121</span>        }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>        if (i &gt; 1) {<a name="line.122"></a>
-<span class="sourceLineNo">123</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.123"></a>
-<span class="sourceLineNo">124</span>        }<a name="line.124"></a>
-<span class="sourceLineNo">125</span>        return time;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>      }<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    }<a name="line.127"></a>
-<span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span>    return -1;<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">115</span>  public static void throwWriteCapacityUnitExceeded(final long waitInterval)<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      throws RpcThrottlingException {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    throwThrottlingException(Type.WriteCapacityUnitExceeded, waitInterval);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>  }<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span>  private static void throwThrottlingException(final Type type, final long waitInterval)<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      throws RpcThrottlingException {<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    String msg = MSG_TYPE[type.ordinal()] + MSG_WAIT + StringUtils.formatTime(waitInterval);<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    throw new RpcThrottlingException(type, waitInterval, msg);<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>  private static long timeFromString(String timeDiff) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    Pattern[] patterns =<a name="line.127"></a>
+<span class="sourceLineNo">128</span>        new Pattern[] { Pattern.compile("^(\\d+\\.\\d\\d)sec"),<a name="line.128"></a>
+<span class="sourceLineNo">129</span>            Pattern.compile("^(\\d+)mins, (\\d+\\.\\d\\d)sec"),<a name="line.129"></a>
+<span class="sourceLineNo">130</span>            Pattern.compile("^(\\d+)hrs, (\\d+)mins, (\\d+\\.\\d\\d)sec") };<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>    for (int i = 0; i &lt; patterns.length; ++i) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      Matcher m = patterns[i].matcher(timeDiff);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      if (m.find()) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>        long time = Math.round(Float.parseFloat(m.group(1 + i)) * 1000);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>        if (i &gt; 0) {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>          time += Long.parseLong(m.group(i)) * (60 * 1000);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>        }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>        if (i &gt; 1) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>          time += Long.parseLong(m.group(i - 1)) * (60 * 60 * 1000);<a name="line.140"></a>
+<span class="sourceLineNo">141</span>        }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>        return time;<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><a name="line.145"></a>
+<span class="sourceLineNo">146</span>    return -1;<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>
 
 
 
index 418733e..df69c9e 100644 (file)
 <span class="sourceLineNo">148</span>          reqSizeLimiter.waitInterval(estimateWriteSize + estimateReadSize));<a name="line.148"></a>
 <span class="sourceLineNo">149</span>    }<a name="line.149"></a>
 <span class="sourceLineNo">150</span>    if (!reqCapacityUnitLimiter.canExecute(estimateWriteCapacityUnit + estimateReadCapacityUnit)) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>      RpcThrottlingException.throwRequestSizeExceeded(<a name="line.151"></a>
+<span class="sourceLineNo">151</span>      RpcThrottlingException.throwRequestCapacityUnitExceeded(<a name="line.151"></a>
 <span class="sourceLineNo">152</span>        reqCapacityUnitLimiter.waitInterval(estimateWriteCapacityUnit + estimateReadCapacityUnit));<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">161</span>            writeSizeLimiter.waitInterval(estimateWriteSize));<a name="line.161"></a>
 <span class="sourceLineNo">162</span>      }<a name="line.162"></a>
 <span class="sourceLineNo">163</span>      if (!writeCapacityUnitLimiter.canExecute(estimateWriteCapacityUnit)) {<a name="line.163"></a>
-<span class="sourceLineNo">164</span>        RpcThrottlingException.throwWriteSizeExceeded(<a name="line.164"></a>
+<span class="sourceLineNo">164</span>        RpcThrottlingException.throwWriteCapacityUnitExceeded(<a name="line.164"></a>
 <span class="sourceLineNo">165</span>          writeCapacityUnitLimiter.waitInterval(estimateWriteCapacityUnit));<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">175</span>            readSizeLimiter.waitInterval(estimateReadSize));<a name="line.175"></a>
 <span class="sourceLineNo">176</span>      }<a name="line.176"></a>
 <span class="sourceLineNo">177</span>      if (!readCapacityUnitLimiter.canExecute(estimateReadCapacityUnit)) {<a name="line.177"></a>
-<span class="sourceLineNo">178</span>        RpcThrottlingException<a name="line.178"></a>
-<span class="sourceLineNo">179</span>            .throwWriteSizeExceeded(readCapacityUnitLimiter.waitInterval(estimateReadCapacityUnit));<a name="line.179"></a>
+<span class="sourceLineNo">178</span>        RpcThrottlingException.throwReadCapacityUnitExceeded(<a name="line.178"></a>
+<span class="sourceLineNo">179</span>          readCapacityUnitLimiter.waitInterval(estimateReadCapacityUnit));<a name="line.179"></a>
 <span class="sourceLineNo">180</span>      }<a name="line.180"></a>
 <span class="sourceLineNo">181</span>    }<a name="line.181"></a>
 <span class="sourceLineNo">182</span>  }<a name="line.182"></a>
index 4041360..24feb2d 100644 (file)
 <span class="sourceLineNo">802</span>  @VisibleForTesting<a name="line.802"></a>
 <span class="sourceLineNo">803</span>  protected boolean trySkipToNextRow(Cell cell) throws IOException {<a name="line.803"></a>
 <span class="sourceLineNo">804</span>    Cell nextCell = null;<a name="line.804"></a>
-<span class="sourceLineNo">805</span>    do {<a name="line.805"></a>
-<span class="sourceLineNo">806</span>      Cell nextIndexedKey = getNextIndexedKey();<a name="line.806"></a>
-<span class="sourceLineNo">807</span>      if (nextIndexedKey != null &amp;&amp; nextIndexedKey != KeyValueScanner.NO_NEXT_INDEXED_KEY<a name="line.807"></a>
-<span class="sourceLineNo">808</span>          &amp;&amp; matcher.compareKeyForNextRow(nextIndexedKey, cell) &gt;= 0) {<a name="line.808"></a>
-<span class="sourceLineNo">809</span>        this.heap.next();<a name="line.809"></a>
-<span class="sourceLineNo">810</span>        ++kvsScanned;<a name="line.810"></a>
-<span class="sourceLineNo">811</span>      } else {<a name="line.811"></a>
-<span class="sourceLineNo">812</span>        return false;<a name="line.812"></a>
-<span class="sourceLineNo">813</span>      }<a name="line.813"></a>
-<span class="sourceLineNo">814</span>    } while ((nextCell = this.heap.peek()) != null &amp;&amp; CellUtil.matchingRows(cell, nextCell));<a name="line.814"></a>
-<span class="sourceLineNo">815</span>    return true;<a name="line.815"></a>
-<span class="sourceLineNo">816</span>  }<a name="line.816"></a>
-<span class="sourceLineNo">817</span><a name="line.817"></a>
-<span class="sourceLineNo">818</span>  /**<a name="line.818"></a>
-<span class="sourceLineNo">819</span>   * See {@link org.apache.hadoop.hbase.regionserver.StoreScanner#trySkipToNextRow(Cell)}<a name="line.819"></a>
-<span class="sourceLineNo">820</span>   * @param cell current cell<a name="line.820"></a>
-<span class="sourceLineNo">821</span>   * @return true means skip to next column, false means not<a name="line.821"></a>
-<span class="sourceLineNo">822</span>   */<a name="line.822"></a>
-<span class="sourceLineNo">823</span>  @VisibleForTesting<a name="line.823"></a>
-<span class="sourceLineNo">824</span>  protected boolean trySkipToNextColumn(Cell cell) throws IOException {<a name="line.824"></a>
-<span class="sourceLineNo">825</span>    Cell nextCell = null;<a name="line.825"></a>
-<span class="sourceLineNo">826</span>    do {<a name="line.826"></a>
-<span class="sourceLineNo">827</span>      Cell nextIndexedKey = getNextIndexedKey();<a name="line.827"></a>
-<span class="sourceLineNo">828</span>      if (nextIndexedKey != null &amp;&amp; nextIndexedKey != KeyValueScanner.NO_NEXT_INDEXED_KEY<a name="line.828"></a>
-<span class="sourceLineNo">829</span>          &amp;&amp; matcher.compareKeyForNextColumn(nextIndexedKey, cell) &gt;= 0) {<a name="line.829"></a>
-<span class="sourceLineNo">830</span>        this.heap.next();<a name="line.830"></a>
-<span class="sourceLineNo">831</span>        ++kvsScanned;<a name="line.831"></a>
-<span class="sourceLineNo">832</span>      } else {<a name="line.832"></a>
-<span class="sourceLineNo">833</span>        return false;<a name="line.833"></a>
-<span class="sourceLineNo">834</span>      }<a name="line.834"></a>
-<span class="sourceLineNo">835</span>    } while ((nextCell = this.heap.peek()) != null &amp;&amp; CellUtil.matchingRowColumn(cell, nextCell));<a name="line.835"></a>
-<span class="sourceLineNo">836</span>    // We need this check because it may happen that the new scanner that we get<a name="line.836"></a>
-<span class="sourceLineNo">837</span>    // during heap.next() is requiring reseek due of fake KV previously generated for<a name="line.837"></a>
-<span class="sourceLineNo">838</span>    // ROWCOL bloom filter optimization. See HBASE-19863 for more details<a name="line.838"></a>
-<span class="sourceLineNo">839</span>    if (nextCell != null &amp;&amp; matcher.compareKeyForNextColumn(nextCell, cell) &lt; 0) {<a name="line.839"></a>
-<span class="sourceLineNo">840</span>      return false;<a name="line.840"></a>
-<span class="sourceLineNo">841</span>    }<a name="line.841"></a>
-<span class="sourceLineNo">842</span>    return true;<a name="line.842"></a>
-<span class="sourceLineNo">843</span>  }<a name="line.843"></a>
-<span class="sourceLineNo">844</span><a name="line.844"></a>
-<span class="sourceLineNo">845</span>  @Override<a name="line.845"></a>
-<span class="sourceLineNo">846</span>  public long getReadPoint() {<a name="line.846"></a>
-<span class="sourceLineNo">847</span>    return this.readPt;<a name="line.847"></a>
-<span class="sourceLineNo">848</span>  }<a name="line.848"></a>
-<span class="sourceLineNo">849</span><a name="line.849"></a>
-<span class="sourceLineNo">850</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.850"></a>
-<span class="sourceLineNo">851</span>    for (KeyValueScanner s : scanners) {<a name="line.851"></a>
-<span class="sourceLineNo">852</span>      s.close();<a name="line.852"></a>
-<span class="sourceLineNo">853</span>    }<a name="line.853"></a>
-<span class="sourceLineNo">854</span>    scanners.clear();<a name="line.854"></a>
-<span class="sourceLineNo">855</span>  }<a name="line.855"></a>
-<span class="sourceLineNo">856</span><a name="line.856"></a>
-<span class="sourceLineNo">857</span>  // Implementation of ChangedReadersObserver<a name="line.857"></a>
-<span class="sourceLineNo">858</span>  @Override<a name="line.858"></a>
-<span class="sourceLineNo">859</span>  public void updateReaders(List&lt;HStoreFile&gt; sfs, List&lt;KeyValueScanner&gt; memStoreScanners)<a name="line.859"></a>
-<span class="sourceLineNo">860</span>      throws IOException {<a name="line.860"></a>
-<span class="sourceLineNo">861</span>    if (CollectionUtils.isEmpty(sfs) &amp;&amp; CollectionUtils.isEmpty(memStoreScanners)) {<a name="line.861"></a>
-<span class="sourceLineNo">862</span>      return;<a name="line.862"></a>
-<span class="sourceLineNo">863</span>    }<a name="line.863"></a>
-<span class="sourceLineNo">864</span>    flushLock.lock();<a name="line.864"></a>
-<span class="sourceLineNo">865</span>    try {<a name="line.865"></a>
-<span class="sourceLineNo">866</span>      flushed = true;<a name="line.866"></a>
-<span class="sourceLineNo">867</span>      final boolean isCompaction = false;<a name="line.867"></a>
-<span class="sourceLineNo">868</span>      boolean usePread = get || scanUsePread;<a name="line.868"></a>
-<span class="sourceLineNo">869</span>      // SEE HBASE-19468 where the flushed files are getting compacted even before a scanner<a name="line.869"></a>
-<span class="sourceLineNo">870</span>      // calls next(). So its better we create scanners here rather than next() call. Ensure<a name="line.870"></a>
-<span class="sourceLineNo">871</span>      // these scanners are properly closed() whether or not the scan is completed successfully<a name="line.871"></a>
-<span class="sourceLineNo">872</span>      // Eagerly creating scanners so that we have the ref counting ticking on the newly created<a name="line.872"></a>
-<span class="sourceLineNo">873</span>      // store files. In case of stream scanners this eager creation does not induce performance<a name="line.873"></a>
-<span class="sourceLineNo">874</span>      // penalty because in scans (that uses stream scanners) the next() call is bound to happen.<a name="line.874"></a>
-<span class="sourceLineNo">875</span>      List&lt;KeyValueScanner&gt; scanners = store.getScanners(sfs, cacheBlocks, get, usePread,<a name="line.875"></a>
-<span class="sourceLineNo">876</span>        isCompaction, matcher, scan.getStartRow(), scan.getStopRow(), this.readPt, false);<a name="line.876"></a>
-<span class="sourceLineNo">877</span>      flushedstoreFileScanners.addAll(scanners);<a name="line.877"></a>
-<span class="sourceLineNo">878</span>      if (!CollectionUtils.isEmpty(memStoreScanners)) {<a name="line.878"></a>
-<span class="sourceLineNo">879</span>        clearAndClose(memStoreScannersAfterFlush);<a name="line.879"></a>
-<span class="sourceLineNo">880</span>        memStoreScannersAfterFlush.addAll(memStoreScanners);<a name="line.880"></a>
-<span class="sourceLineNo">881</span>      }<a name="line.881"></a>
-<span class="sourceLineNo">882</span>    } finally {<a name="line.882"></a>
-<span class="sourceLineNo">883</span>      flushLock.unlock();<a name="line.883"></a>
-<span class="sourceLineNo">884</span>    }<a name="line.884"></a>
-<span class="sourceLineNo">885</span>    // Let the next() call handle re-creating and seeking<a name="line.885"></a>
-<span class="sourceLineNo">886</span>  }<a name="line.886"></a>
-<span class="sourceLineNo">887</span><a name="line.887"></a>
-<span class="sourceLineNo">888</span>  /**<a name="line.888"></a>
-<span class="sourceLineNo">889</span>   * @return if top of heap has changed (and KeyValueHeap has to try the next KV)<a name="line.889"></a>
-<span class="sourceLineNo">890</span>   */<a name="line.890"></a>
-<span class="sourceLineNo">891</span>  protected final boolean reopenAfterFlush() throws IOException {<a name="line.891"></a>
-<span class="sourceLineNo">892</span>    // here we can make sure that we have a Store instance so no null check on store.<a name="line.892"></a>
-<span class="sourceLineNo">893</span>    Cell lastTop = heap.peek();<a name="line.893"></a>
-<span class="sourceLineNo">894</span>    // When we have the scan object, should we not pass it to getScanners() to get a limited set of<a name="line.894"></a>
-<span class="sourceLineNo">895</span>    // scanners? We did so in the constructor and we could have done it now by storing the scan<a name="line.895"></a>
-<span class="sourceLineNo">896</span>    // object from the constructor<a name="line.896"></a>
-<span class="sourceLineNo">897</span>    List&lt;KeyValueScanner&gt; scanners;<a name="line.897"></a>
-<span class="sourceLineNo">898</span>    flushLock.lock();<a name="line.898"></a>
-<span class="sourceLineNo">899</span>    try {<a name="line.899"></a>
-<span class="sourceLineNo">900</span>      List&lt;KeyValueScanner&gt; allScanners =<a name="line.900"></a>
-<span class="sourceLineNo">901</span>          new ArrayList&lt;&gt;(flushedstoreFileScanners.size() + memStoreScannersAfterFlush.size());<a name="line.901"></a>
-<span class="sourceLineNo">902</span>      allScanners.addAll(flushedstoreFileScanners);<a name="line.902"></a>
-<span class="sourceLineNo">903</span>      allScanners.addAll(memStoreScannersAfterFlush);<a name="line.903"></a>
-<span class="sourceLineNo">904</span>      scanners = selectScannersFrom(store, allScanners);<a name="line.904"></a>
-<span class="sourceLineNo">905</span>      // Clear the current set of flushed store files scanners so that they don't get added again<a name="line.905"></a>
-<span class="sourceLineNo">906</span>      flushedstoreFileScanners.clear();<a name="line.906"></a>
-<span class="sourceLineNo">907</span>      memStoreScannersAfterFlush.clear();<a name="line.907"></a>
-<span class="sourceLineNo">908</span>    } finally {<a name="line.908"></a>
-<span class="sourceLineNo">909</span>      flushLock.unlock();<a name="line.909"></a>
-<span class="sourceLineNo">910</span>    }<a name="line.910"></a>
-<span class="sourceLineNo">911</span><a name="line.911"></a>
-<span class="sourceLineNo">912</span>    // Seek the new scanners to the last key<a name="line.912"></a>
-<span class="sourceLineNo">913</span>    seekScanners(scanners, lastTop, false, parallelSeekEnabled);<a name="line.913"></a>
-<span class="sourceLineNo">914</span>    // remove the older memstore scanner<a name="line.914"></a>
-<span class="sourceLineNo">915</span>    for (int i = currentScanners.size() - 1; i &gt;=0; i--) {<a name="line.915"></a>
-<span class="sourceLineNo">916</span>      if (!currentScanners.get(i).isFileScanner()) {<a name="line.916"></a>
-<span class="sourceLineNo">917</span>        scannersForDelayedClose.add(currentScanners.remove(i));<a name="line.917"></a>
-<span class="sourceLineNo">918</span>      } else {<a name="line.918"></a>
-<span class="sourceLineNo">919</span>        // we add the memstore scanner to the end of currentScanners<a name="line.919"></a>
-<span class="sourceLineNo">920</span>        break;<a name="line.920"></a>
-<span class="sourceLineNo">921</span>      }<a name="line.921"></a>
-<span class="sourceLineNo">922</span>    }<a name="line.922"></a>
-<span class="sourceLineNo">923</span>    // add the newly created scanners on the flushed files and the current active memstore scanner<a name="line.923"></a>
-<span class="sourceLineNo">924</span>    addCurrentScanners(scanners);<a name="line.924"></a>
-<span class="sourceLineNo">925</span>    // Combine all seeked scanners with a heap<a name="line.925"></a>
-<span class="sourceLineNo">926</span>    resetKVHeap(this.currentScanners, store.getComparator());<a name="line.926"></a>
-<span class="sourceLineNo">927</span>    resetQueryMatcher(lastTop);<a name="line.927"></a>
-<span class="sourceLineNo">928</span>    if (heap.peek() == null || store.getComparator().compareRows(lastTop, this.heap.peek()) != 0) {<a name="line.928"></a>
-<span class="sourceLineNo">929</span>      LOG.info("Storescanner.peek() is changed where before = " + lastTop.toString() +<a name="line.929"></a>
-<span class="sourceLineNo">930</span>          ",and after = " + heap.peek());<a name="line.930"></a>
-<span class="sourceLineNo">931</span>      topChanged = true;<a name="line.931"></a>
-<span class="sourceLineNo">932</span>    } else {<a name="line.932"></a>
-<span class="sourceLineNo">933</span>      topChanged = false;<a name="line.933"></a>
-<span class="sourceLineNo">934</span>    }<a name="line.934"></a>
-<span class="sourceLineNo">935</span>    return topChanged;<a name="line.935"></a>
-<span class="sourceLineNo">936</span>  }<a name="line.936"></a>
-<span class="sourceLineNo">937</span><a name="line.937"></a>
-<span class="sourceLineNo">938</span>  private void resetQueryMatcher(Cell lastTopKey) {<a name="line.938"></a>
-<span class="sourceLineNo">939</span>    // Reset the state of the Query Matcher and set to top row.<a name="line.939"></a>
-<span class="sourceLineNo">940</span>    // Only reset and call setRow if the row changes; avoids confusing the<a name="line.940"></a>
-<span class="sourceLineNo">941</span>    // query matcher if scanning intra-row.<a name="line.941"></a>
-<span class="sourceLineNo">942</span>    Cell cell = heap.peek();<a name="line.942"></a>
-<span class="sourceLineNo">943</span>    if (cell == null) {<a name="line.943"></a>
-<span class="sourceLineNo">944</span>      cell = lastTopKey;<a name="line.944"></a>
-<span class="sourceLineNo">945</span>    }<a name="line.945"></a>
-<span class="sourceLineNo">946</span>    if ((matcher.currentRow() == null) || !CellUtil.matchingRows(cell, matcher.currentRow())) {<a name="line.946"></a>
-<span class="sourceLineNo">947</span>      this.countPerRow = 0;<a name="line.947"></a>
-<span class="sourceLineNo">948</span>      // The setToNewRow will call reset internally<a name="line.948"></a>
-<span class="sourceLineNo">949</span>      matcher.setToNewRow(cell);<a name="line.949"></a>
-<span class="sourceLineNo">950</span>    }<a name="line.950"></a>
-<span class="sourceLineNo">951</span>  }<a name="line.951"></a>
-<span class="sourceLineNo">952</span><a name="line.952"></a>
-<span class="sourceLineNo">953</span>  /**<a name="line.953"></a>
-<span class="sourceLineNo">954</span>   * Check whether scan as expected order<a name="line.954"></a>
-<span class="sourceLineNo">955</span>   * @param prevKV<a name="line.955"></a>
-<span class="sourceLineNo">956</span>   * @param kv<a name="line.956"></a>
-<span class="sourceLineNo">957</span>   * @param comparator<a name="line.957"></a>
-<span class="sourceLineNo">958</span>   * @throws IOException<a name="line.958"></a>
-<span class="sourceLineNo">959</span>   */<a name="line.959"></a>
-<span class="sourceLineNo">960</span>  protected void checkScanOrder(Cell prevKV, Cell kv,<a name="line.960"></a>
-<span class="sourceLineNo">961</span>      CellComparator comparator) throws IOException {<a name="line.961"></a>
-<span class="sourceLineNo">962</span>    // Check that the heap gives us KVs in an increasing order.<a name="line.962"></a>
-<span class="sourceLineNo">963</span>    assert prevKV == null || comparator == null<a name="line.963"></a>
-<span class="sourceLineNo">964</span>        || comparator.compare(prevKV, kv) &lt;= 0 : "Key " + prevKV<a name="line.964"></a>
-<span class="sourceLineNo">965</span>        + " followed by a " + "smaller key " + kv + " in cf " + store;<a name="line.965"></a>
-<span class="sourceLineNo">966</span>  }<a name="line.966"></a>
-<span class="sourceLineNo">967</span><a name="line.967"></a>
-<span class="sourceLineNo">968</span>  protected boolean seekToNextRow(Cell c) throws IOException {<a name="line.968"></a>
-<span class="sourceLineNo">969</span>    return reseek(PrivateCellUtil.createLastOnRow(c));<a name="line.969"></a>
-<span class="sourceLineNo">970</span>  }<a name="line.970"></a>
-<span class="sourceLineNo">971</span><a name="line.971"></a>
-<span class="sourceLineNo">972</span>  /**<a name="line.972"></a>
-<span class="sourceLineNo">973</span>   * Do a reseek in a normal StoreScanner(scan forward)<a name="line.973"></a>
-<span class="sourceLineNo">974</span>   * @param kv<a name="line.974"></a>
-<span class="sourceLineNo">975</span>   * @return true if scanner has values left, false if end of scanner<a name="line.975"></a>
-<span class="sourceLineNo">976</span>   * @throws IOException<a name="line.976"></a>
-<span class="sourceLineNo">977</span>   */<a name="line.977"></a>
-<span class="sourceLineNo">978</span>  protected boolean seekAsDirection(Cell kv)<a name="line.978"></a>
-<span class="sourceLineNo">979</span>      throws IOException {<a name="line.979"></a>
-<span class="sourceLineNo">980</span>    return reseek(kv);<a name="line.980"></a>
-<span class="sourceLineNo">981</span>  }<a name="line.981"></a>
-<span class="sourceLineNo">982</span><a name="line.982"></a>
-<span class="sourceLineNo">983</span>  @Override<a name="line.983"></a>
-<span class="sourceLineNo">984</span>  public boolean reseek(Cell kv) throws IOException {<a name="line.984"></a>
-<span class="sourceLineNo">985</span>    if (checkFlushed()) {<a name="line.985"></a>
-<span class="sourceLineNo">986</span>      reopenAfterFlush();<a name="line.986"></a>
-<span class="sourceLineNo">987</span>    }<a name="line.987"></a>
-<span class="sourceLineNo">988</span>    if (explicitColumnQuery &amp;&amp; lazySeekEnabledGlobally) {<a name="line.988"></a>
-<span class="sourceLineNo">989</span>      return heap.requestSeek(kv, true, useRowColBloom);<a name="line.989"></a>
-<span class="sourceLineNo">990</span>    }<a name="line.990"></a>
-<span class="sourceLineNo">991</span>    return heap.reseek(kv);<a name="line.991"></a>
-<span class="sourceLineNo">992</span>  }<a name="line.992"></a>
-<span class="sourceLineNo">993</span><a name="line.993"></a>
-<span class="sourceLineNo">994</span>  @VisibleForTesting<a name="line.994"></a>
-<span class="sourceLineNo">995</span>  void trySwitchToStreamRead() {<a name="line.995"></a>
-<span class="sourceLineNo">996</span>    if (readType != Scan.ReadType.DEFAULT || !scanUsePread || closing ||<a name="line.996"></a>
-<span class="sourceLineNo">997</span>        heap.peek() == null || bytesRead &lt; preadMaxBytes) {<a name="line.997"></a>
-<span class="sourceLineNo">998</span>      return;<a name="line.998"></a>
-<span class="sourceLineNo">999</span>    }<a name="line.999"></a>
-<span class="sourceLineNo">1000</span>    LOG.debug("Switch to stream read (scanned={} bytes) of {}", bytesRead,<a name="line.1000"></a>
-<span class="sourceLineNo">1001</span>        this.store.getColumnFamilyName());<a name="line.1001"></a>
-<span class="sourceLineNo">1002</span>    scanUsePread = false;<a name="line.1002"></a>
-<span class="sourceLineNo">1003</span>    Cell lastTop = heap.peek();<a name="line.1003"></a>
-<span class="sourceLineNo">1004</span>    List&lt;KeyValueScanner&gt; memstoreScanners = new ArrayList&lt;&gt;();<a name="line.1004"></a>
-<span class="sourceLineNo">1005</span>    List&lt;KeyValueScanner&gt; scannersToClose = new ArrayList&lt;&gt;();<a name="line.1005"></a>
-<span class="sourceLineNo">1006</span>    for (KeyValueScanner kvs : currentScanners) {<a name="line.1006"></a>
-<span class="sourceLineNo">1007</span>      if (!kvs.isFileScanner()) {<a name="line.1007"></a>
-<span class="sourceLineNo">1008</span>        // collect memstorescanners here<a name="line.1008"></a>
-<span class="sourceLineNo">1009</span>        memstoreScanners.add(kvs);<a name="line.1009"></a>
-<span class="sourceLineNo">1010</span>      } else {<a name="line.1010"></a>
-<span class="sourceLineNo">1011</span>        scannersToClose.add(kvs);<a name="line.1011"></a>
-<span class="sourceLineNo">1012</span>      }<a name="line.1012"></a>
-<span class="sourceLineNo">1013</span>    }<a name="line.1013"></a>
-<span class="sourceLineNo">1014</span>    List&lt;KeyValueScanner&gt; fileScanners = null;<a name="line.1014"></a>
-<span class="sourceLineNo">1015</span>    List&lt;KeyValueScanner&gt; newCurrentScanners;<a name="line.1015"></a>
-<span class="sourceLineNo">1016</span>    KeyValueHeap newHeap;<a name="line.1016"></a>
-<span class="sourceLineNo">1017</span>    try {<a name="line.1017"></a>
-<span class="sourceLineNo">1018</span>      // We must have a store instance here so no null check<a name="line.1018"></a>
-<span class="sourceLineNo">1019</span>      // recreate the scanners on the current file scanners<a name="line.1019"></a>
-<span class="sourceLineNo">1020</span>      fileScanners = store.recreateScanners(scannersToClose, cacheBlocks, false, false,<a name="line.1020"></a>
-<span class="sourceLineNo">1021</span>        matcher, scan.getStartRow(), scan.includeStartRow(), scan.getStopRow(),<a name="line.1021"></a>
-<span class="sourceLineNo">1022</span>        scan.includeStopRow(), readPt, false);<a name="line.1022"></a>
-<span class="sourceLineNo">1023</span>      if (fileScanners == null) {<a name="line.1023"></a>
-<span class="sourceLineNo">1024</span>        return;<a name="line.1024"></a>
-<span class="sourceLineNo">1025</span>      }<a name="line.1025"></a>
-<span class="sourceLineNo">1026</span>      seekScanners(fileScanners, lastTop, false, parallelSeekEnabled);<a name="line.1026"></a>
-<span class="sourceLineNo">1027</span>      newCurrentScanners = new ArrayList&lt;&gt;(fileScanners.size() + memstoreScanners.size());<a name="line.1027"></a>
-<span class="sourceLineNo">1028</span>      newCurrentScanners.addAll(fileScanners);<a name="line.1028"></a>
-<span class="sourceLineNo">1029</span>      newCurrentScanners.addAll(memstoreScanners);<a name="line.1029"></a>
-<span class="sourceLineNo">1030</span>      newHeap = new KeyValueHeap(newCurrentScanners, comparator);<a name="line.1030"></a>
-<span class="sourceLineNo">1031</span>    } catch (Exception e) {<a name="line.1031"></a>
-<span class="sourceLineNo">1032</span>      LOG.warn("failed to switch to stream read", e);<a name="line.1032"></a>
-<span class="sourceLineNo">1033</span>      if (fileScanners != null) {<a name="line.1033"></a>
-<span class="sourceLineNo">1034</span>        fileScanners.forEach(KeyValueScanner::close);<a name="line.1034"></a>
-<span class="sourceLineNo">1035</span>      }<a name="line.1035"></a>
-<span class="sourceLineNo">1036</span>      return;<a name="line.1036"></a>
-<span class="sourceLineNo">1037</span>    }<a name="line.1037"></a>
-<span class="sourceLineNo">1038</span>    currentScanners.clear();<a name="line.1038"></a>
-<span class="sourceLineNo">1039</span>    addCurrentScanners(newCurrentScanners);<a name="line.1039"></a>
-<span class="sourceLineNo">1040</span>    this.heap = newHeap;<a name="line.1040"></a>
-<span class="sourceLineNo">1041</span>    resetQueryMatcher(lastTop);<a name="line.1041"></a>
-<span class="sourceLineNo">1042</span>    scannersToClose.forEach(KeyValueScanner::close);<a name="line.1042"></a>
-<span class="sourceLineNo">1043</span>  }<a name="line.1043"></a>
-<span class="sourceLineNo">1044</span><a name="line.1044"></a>
-<span class="sourceLineNo">1045</span>  protected final boolean checkFlushed() {<a name="line.1045"></a>
-<span class="sourceLineNo">1046</span>    // check the var without any lock. Suppose even if we see the old<a name="line.1046"></a>
-<span class="sourceLineNo">1047</span>    // value here still it is ok to continue because we will not be resetting<a name="line.1047"></a>
-<span class="sourceLineNo">1048</span>    // the heap but will continue with the referenced memstore's snapshot. For compactions<a name="line.1048"></a>
-<span class="sourceLineNo">1049</span>    // any way we don't need the updateReaders at all to happen as we still continue with<a name="line.1049"></a>
-<span class="sourceLineNo">1050</span>    // the older files<a name="line.1050"></a>
-<span class="sourceLineNo">1051</span>    if (flushed) {<a name="line.1051"></a>
-<span class="sourceLineNo">1052</span>      // If there is a flush and the current scan is notified on the flush ensure that the<a name="line.1052"></a>
-<span class="sourceLineNo">1053</span>      // scan's heap gets reset and we do a seek on the newly flushed file.<a name="line.1053"></a>
-<span class="sourceLineNo">1054</span>      if (this.closing) {<a name="line.1054"></a>
-<span class="sourceLineNo">1055</span>        return false;<a name="line.1055"></a>
-<span class="sourceLineNo">1056</span>      }<a name="line.1056"></a>
-<span class="sourceLineNo">1057</span>      // reset the flag<a name="line.1057"></a>
-<span class="sourceLineNo">1058</span>      flushed = false;<a name="line.1058"></a>
-<span class="sourceLineNo">1059</span>      return true;<a name="line.1059"></a>
-<span class="sourceLineNo">1060</span>    }<a name="line.1060"></a>
-<span class="sourceLineNo">1061</span>    return false;<a name="line.1061"></a>
-<span class="sourceLineNo">1062</span>  }<a name="line.1062"></a>
-<span class="sourceLineNo">1063</span><a name="line.1063"></a>
-<span class="sourceLineNo">1064</span><a name="line.1064"></a>
-<span class="sourceLineNo">1065</span>  /**<a name="line.1065"></a>
-<span class="sourceLineNo">1066</span>   * Seek storefiles in parallel to optimize IO latency as much as possible<a name="line.1066"></a>
-<span class="sourceLineNo">1067</span>   * @param scanners the list {@link KeyValueScanner}s to be read from<a name="line.1067"></a>
-<span class="sourceLineNo">1068</span>   * @param kv the KeyValue on which the operation is being requested<a name="line.1068"></a>
-<span class="sourceLineNo">1069</span>   * @throws IOException<a name="line.1069"></a>
-<span class="sourceLineNo">1070</span>   */<a name="line.1070"></a>
-<span class="sourceLineNo">1071</span>  private void parallelSeek(final List&lt;? extends KeyValueScanner&gt;<a name="line.1071"></a>
-<span class="sourceLineNo">1072</span>      scanners, final Cell kv) throws IOException {<a name="line.1072"></a>
-<span class="sourceLineNo">1073</span>    if (scanners.isEmpty()) return;<a name="line.1073"></a>
-<span class="sourceLineNo">1074</span>    int storeFileScannerCount = scanners.size();<a name="line.1074"></a>
-<span class="sourceLineNo">1075</span>    CountDownLatch latch = new CountDownLatch(storeFileScannerCount);<a name="line.1075"></a>
-<span class="sourceLineNo">1076</span>    List&lt;ParallelSeekHandler&gt; handlers = new ArrayList&lt;&gt;(storeFileScannerCount);<a name="line.1076"></a>
-<span class="sourceLineNo">1077</span>    for (KeyValueScanner scanner : scanners) {<a name="line.1077"></a>
-<span class="sourceLineNo">1078</span>      if (scanner instanceof StoreFileScanner) {<a name="line.1078"></a>
-<span class="sourceLineNo">1079</span>        ParallelSeekHandler seekHandler = new ParallelSeekHandler(scanner, kv,<a name="line.1079"></a>
-<span class="sourceLineNo">1080</span>          this.readPt, latch);<a name="line.1080"></a>
-<span class="sourceLineNo">1081</span>        executor.submit(seekHandler);<a name="line.1081"></a>
-<span class="sourceLineNo">1082</span>        handlers.add(seekHandler);<a name="line.1082"></a>
-<span class="sourceLineNo">1083</span>      } else {<a name="line.1083"></a>
-<span class="sourceLineNo">1084</span>        scanner.seek(kv);<a name="line.1084"></a>
-<span class="sourceLineNo">1085</span>        latch.countDown();<a name="line.1085"></a>
-<span class="sourceLineNo">1086</span>      }<a name="line.1086"></a>
-<span class="sourceLineNo">1087</span>    }<a name="line.1087"></a>
-<span class="sourceLineNo">1088</span><a name="line.1088"></a>
-<span class="sourceLineNo">1089</span>    try {<a name="line.1089"></a>
-<span class="sourceLineNo">1090</span>      latch.await();<a name="line.1090"></a>
-<span class="sourceLineNo">1091</span>    } catch (InterruptedException ie) {<a name="line.1091"></a>
-<span class="sourceLineNo">1092</span>      throw (InterruptedIOException)new InterruptedIOException().initCause(ie);<a name="line.1092"></a>
-<span class="sourceLineNo">1093</span>    }<a name="line.1093"></a>
-<span class="sourceLineNo">1094</span><a name="line.1094"></a>
-<span class="sourceLineNo">1095</span>    for (ParallelSeekHandler handler : handlers) {<a name="line.1095"></a>
-<span class="sourceLineNo">1096</span>      if (handler.getErr() != null) {<a name="line.1096"></a>
-<span class="sourceLineNo">1097</span>        throw new IOException(handler.getErr());<a name="line.1097"></a>
-<span class="sourceLineNo">1098</span>      }<a name="line.1098"></a>
-<span class="sourceLineNo">1099</span>    }<a name="line.1099"></a>
-<span class="sourceLineNo">1100</span>  }<a name="line.1100"></a>
-<span class="sourceLineNo">1101</span><a name="line.1101"></a>
-<span class="sourceLineNo">1102</span>  /**<a name="line.1102"></a>
-<span class="sourceLineNo">1103</span>   * Used in testing.<a name="line.1103"></a>
-<span class="sourceLineNo">1104</span>   * @return all scanners in no particular order<a name="line.1104"></a>
-<span class="sourceLineNo">1105</span>   */<a name="line.1105"></a>
-<span class="sourceLineNo">1106</span>  @VisibleForTesting<a name="line.1106"></a>
-<span class="sourceLineNo">1107</span>  List&lt;KeyValueScanner&gt; getAllScannersForTesting() {<a name="line.1107"></a>
-<span class="sourceLineNo">1108</span>    List&lt;KeyValueScanner&gt; allScanners = new ArrayList&lt;&gt;();<a name="line.1108"></a>
-<span class="sourceLineNo">1109</span>    KeyValueScanner current = heap.getCurrentForTesting();<a name="line.1109"></a>
-<span class="sourceLineNo">1110</span>    if (current != null)<a name="line.1110"></a>
-<span class="sourceLineNo">1111</span>      allScanners.add(current);<a name="line.1111"></a>
-<span class="sourceLineNo">1112</span>    for (KeyValueScanner scanner : heap.getHeap())<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>      allScanners.add(scanner);<a name="line.1113"></a>
-<span class="sourceLineNo">1114</span>    return allScanners;<a name="line.1114"></a>
-<span class="sourceLineNo">1115</span>  }<a name="line.1115"></a>
-<span class="sourceLineNo">1116</span><a name="line.1116"></a>
-<span class="sourceLineNo">1117</span>  static void enableLazySeekGlobally(boolean enable) {<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>    lazySeekEnabledGlobally = enable;<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>  }<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span><a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>  /**<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>   * @return The estimated number of KVs seen by this scanner (includes some skipped KVs).<a name="line.1122"></a>
-<span class="sourceLineNo">1123</span>   */<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span>  public long getEstimatedNumberOfKvsScanned() {<a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>    return this.kvsScanned;<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>  }<a name="line.1126"></a>
-<span class="sourceLineNo">1127</span><a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>  @Override<a name="line.1128"></a>
-<span class="sourceLineNo">1129</span>  public Cell getNextIndexedKey() {<a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    return this.heap.getNextIndexedKey();<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>  }<a name="line.1131"></a>
-<span class="sourceLineNo">1132</span><a name="line.1132"></a>
-<span class="sourceLineNo">1133</span>  @Override<a name="line.1133"></a>
-<span class="sourceLineNo">1134</span>  public void shipped() throws IOException {<a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>    if (prevCell != null) {<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>      // Do the copy here so that in case the prevCell ref is pointing to the previous<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span>      // blocks we can safely release those blocks.<a name="line.1137"></a>
-<span class="sourceLineNo">1138</span>      // This applies to blocks that are got from Bucket cache, L1 cache and the blocks<a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>      // fetched from HDFS. Copying this would ensure that we let go the references to these<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span>      // blocks so that they can be GCed safely(in case of bucket cache)<a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>      prevCell = KeyValueUtil.toNewKeyCell(this.prevCell);<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>    }<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>    matcher.beforeShipped();<a name="line.1143"></a>
-<span class="sourceLineNo">1144</span>    // There wont be further fetch of Cells from these scanners. Just close.<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span>    clearAndClose(scannersForDelayedClose);<a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>    if (this.heap != null) {<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>      this.heap.shipped();<a name="line.1147"></a>
-<span class="sourceLineNo">1148</span>      // When switching from pread to stream, we will open a new scanner for each store file, but<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>      // the old scanner may still track the HFileBlocks we have scanned but not sent back to client<a name="line.1149"></a>
-<span class="sourceLineNo">1150</span>      // yet. If we close the scanner immediately then the HFileBlocks may be messed up by others<a name="line.1150"></a>
-<span class="sourceLineNo">1151</span>      // before we serialize and send it back to client. The HFileBlocks will be released in shipped<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>      // method, so we here will also open new scanners and close old scanners in shipped method.<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>      // See HBASE-18055 for more details.<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span>      trySwitchToStreamRead();<a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>    }<a name="line.1155"></a>
-<span class="sourceLineNo">1156</span>  }<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>}<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span><a name="line.1158"></a>
+<span class="sourceLineNo">805</span>    // used to guard against a changed next indexed key by doing a identity comparison<a name="line.805"></a>
+<span class="sourceLineNo">806</span>    // when the identity changes we need to compare the bytes again<a name="line.806"></a>
+<span class="sourceLineNo">807</span>    Cell previousIndexedKey = null;<a name="line.807"></a>
+<span class="sourceLineNo">808</span>    do {<a name="line.808"></a>
+<span class="sourceLineNo">809</span>      Cell nextIndexedKey = getNextIndexedKey();<a name="line.809"></a>
+<span class="sourceLineNo">810</span>      if (nextIndexedKey != null &amp;&amp; nextIndexedKey != KeyValueScanner.NO_NEXT_INDEXED_KEY<a name="line.810"></a>
+<span class="sourceLineNo">811</span>          &amp;&amp; (nextIndexedKey == previousIndexedKey || matcher.compareKeyForNextRow(nextIndexedKey, cell) &gt;= 0)) {<a name="line.811"></a>
+<span class="sourceLineNo">812</span>        this.heap.next();<a name="line.812"></a>
+<span class="sourceLineNo">813</span>        ++kvsScanned;<a name="line.813"></a>
+<span class="sourceLineNo">814</span>        previousIndexedKey = nextIndexedKey;<a name="line.814"></a>
+<span class="sourceLineNo">815</span>      } else {<a name="line.815"></a>
+<span class="sourceLineNo">816</span>        return false;<a name="line.816"></a>
+<span class="sourceLineNo">817</span>      }<a name="line.817"></a>
+<span class="sourceLineNo">818</span>    } while ((nextCell = this.heap.peek()) != null &amp;&amp; CellUtil.matchingRows(cell, nextCell));<a name="line.818"></a>
+<span class="sourceLineNo">819</span>    return true;<a name="line.819"></a>
+<span class="sourceLineNo">820</span>  }<a name="line.820"></a>
+<span class="sourceLineNo">821</span><a name="line.821"></a>
+<span class="sourceLineNo">822</span>  /**<a name="line.822"></a>
+<span class="sourceLineNo">823</span>   * See {@link org.apache.hadoop.hbase.regionserver.StoreScanner#trySkipToNextRow(Cell)}<a name="line.823"></a>
+<span class="sourceLineNo">824</span>   * @param cell current cell<a name="line.824"></a>
+<span class="sourceLineNo">825</span>   * @return true means skip to next column, false means not<a name="line.825"></a>
+<span class="sourceLineNo">826</span>   */<a name="line.826"></a>
+<span class="sourceLineNo">827</span>  @VisibleForTesting<a name="line.827"></a>
+<span class="sourceLineNo">828</span>  protected boolean trySkipToNextColumn(Cell cell) throws IOException {<a name="line.828"></a>
+<span class="sourceLineNo">829</span>    Cell nextCell = null;<a name="line.829"></a>
+<span class="sourceLineNo">830</span>    // used to guard against a changed next indexed key by doing a identity comparison<a name="line.830"></a>
+<span class="sourceLineNo">831</span>    // when the identity changes we need to compare the bytes again<a name="line.831"></a>
+<span class="sourceLineNo">832</span>    Cell previousIndexedKey = null;<a name="line.832"></a>
+<span class="sourceLineNo">833</span>    do {<a name="line.833"></a>
+<span class="sourceLineNo">834</span>      Cell nextIndexedKey = getNextIndexedKey();<a name="line.834"></a>
+<span class="sourceLineNo">835</span>      if (nextIndexedKey != null &amp;&amp; nextIndexedKey != KeyValueScanner.NO_NEXT_INDEXED_KEY<a name="line.835"></a>
+<span class="sourceLineNo">836</span>          &amp;&amp; (nextIndexedKey == previousIndexedKey || matcher.compareKeyForNextColumn(nextIndexedKey, cell) &gt;= 0)) {<a name="line.836"></a>
+<span class="sourceLineNo">837</span>        this.heap.next();<a name="line.837"></a>
+<span class="sourceLineNo">838</span>        ++kvsScanned;<a name="line.838"></a>
+<span class="sourceLineNo">839</span>        previousIndexedKey = nextIndexedKey;<a name="line.839"></a>
+<span class="sourceLineNo">840</span>      } else {<a name="line.840"></a>
+<span class="sourceLineNo">841</span>        return false;<a name="line.841"></a>
+<span class="sourceLineNo">842</span>      }<a name="line.842"></a>
+<span class="sourceLineNo">843</span>    } while ((nextCell = this.heap.peek()) != null &amp;&amp; CellUtil.matchingRowColumn(cell, nextCell));<a name="line.843"></a>
+<span class="sourceLineNo">844</span>    // We need this check because it may happen that the new scanner that we get<a name="line.844"></a>
+<span class="sourceLineNo">845</span>    // during heap.next() is requiring reseek due of fake KV previously generated for<a name="line.845"></a>
+<span class="sourceLineNo">846</span>    // ROWCOL bloom filter optimization. See HBASE-19863 for more details<a name="line.846"></a>
+<span class="sourceLineNo">847</span>    if (nextCell != null &amp;&amp; matcher.compareKeyForNextColumn(nextCell, cell) &lt; 0) {<a name="line.847"></a>
+<span class="sourceLineNo">848</span>      return false;<a name="line.848"></a>
+<span class="sourceLineNo">849</span>    }<a name="line.849"></a>
+<span class="sourceLineNo">850</span>    return true;<a name="line.850"></a>
+<span class="sourceLineNo">851</span>  }<a name="line.851"></a>
+<span class="sourceLineNo">852</span><a name="line.852"></a>
+<span class="sourceLineNo">853</span>  @Override<a name="line.853"></a>
+<span class="sourceLineNo">854</span>  public long getReadPoint() {<a name="line.854"></a>
+<span class="sourceLineNo">855</span>    return this.readPt;<a name="line.855"></a>
+<span class="sourceLineNo">856</span>  }<a name="line.856"></a>
+<span class="sourceLineNo">857</span><a name="line.857"></a>
+<span class="sourceLineNo">858</span>  private static void clearAndClose(List&lt;KeyValueScanner&gt; scanners) {<a name="line.858"></a>
+<span class="sourceLineNo">859</span>    for (KeyValueScanner s : scanners) {<a name="line.859"></a>
+<span class="sourceLineNo">860</span>      s.close();<a name="line.860"></a>
+<span class="sourceLineNo">861</span>    }<a name="line.861"></a>
+<span class="sourceLineNo">862</span>    scanners.clear();<a name="line.862"></a>
+<span class="sourceLineNo">863</span>  }<a name="line.863"></a>
+<span class="sourceLineNo">864</span><a name="line.864"></a>
+<span class="sourceLineNo">865</span>  // Implementation of ChangedReadersObserver<a name="line.865"></a>
+<span class="sourceLineNo">866</span>  @Override<a name="line.866"></a>
+<span class="sourceLineNo">867</span>  public void updateReaders(List&lt;HStoreFile&gt; sfs, List&lt;KeyValueScanner&gt; memStoreScanners)<a name="line.867"></a>
+<span class="sourceLineNo">868</span>      throws IOException {<a name="line.868"></a>
+<span class="sourceLineNo">869</span>    if (CollectionUtils.isEmpty(sfs) &amp;&amp; CollectionUtils.isEmpty(memStoreScanners)) {<a name="line.869"></a>
+<span class="sourceLineNo">870</span>      return;<a name="line.870"></a>
+<span class="sourceLineNo">871</span>    }<a name="line.871"></a>
+<span class="sourceLineNo">872</span>    flushLock.lock();<a name="line.872"></a>
+<span class="sourceLineNo">873</span>    try {<a name="line.873"></a>
+<span class="sourceLineNo">874</span>      flushed = true;<a name="line.874"></a>
+<span class="sourceLineNo">875</span>      final boolean isCompaction = false;<a name="line.875"></a>
+<span class="sourceLineNo">876</span>      boolean usePread = get || scanUsePread;<a name="line.876"></a>
+<span class="sourceLineNo">877</span>      // SEE HBASE-19468 where the flushed files are getting compacted even before a scanner<a name="line.877"></a>
+<span class="sourceLineNo">878</span>      // calls next(). So its better we create scanners here rather than next() call. Ensure<a name="line.878"></a>
+<span class="sourceLineNo">879</span>      // these scanners are properly closed() whether or not the scan is completed successfully<a name="line.879"></a>
+<span class="sourceLineNo">880</span>      // Eagerly creating scanners so that we have the ref counting ticking on the newly created<a name="line.880"></a>
+<span class="sourceLineNo">881</span>      // store files. In case of stream scanners this eager creation does not induce performance<a name="line.881"></a>
+<span class="sourceLineNo">882</span>      // penalty because in scans (that uses stream scanners) the next() call is bound to happen.<a name="line.882"></a>
+<span class="sourceLineNo">883</span>      List&lt;KeyValueScanner&gt; scanners = store.getScanners(sfs, cacheBlocks, get, usePread,<a name="line.883"></a>
+<span class="sourceLineNo">884</span>        isCompaction, matcher, scan.getStartRow(), scan.getStopRow(), this.readPt, false);<a name="line.884"></a>
+<span class="sourceLineNo">885</span>      flushedstoreFileScanners.addAll(scanners);<a name="line.885"></a>
+<span class="sourceLineNo">886</span>      if (!CollectionUtils.isEmpty(memStoreScanners)) {<a name="line.886"></a>
+<span class="sourceLineNo">887</span>        clearAndClose(memStoreScannersAfterFlush);<a name="line.887"></a>
+<span class="sourceLineNo">888</span>        memStoreScannersAfterFlush.addAll(memStoreScanners);<a name="line.888"></a>
+<span class="sourceLineNo">889</span>      }<a name="line.889"></a>
+<span class="sourceLineNo">890</span>    } finally {<a name="line.890"></a>
+<span class="sourceLineNo">891</span>      flushLock.unlock();<a name="line.891"></a>
+<span class="sourceLineNo">892</span>    }<a name="line.892"></a>
+<span class="sourceLineNo">893</span>    // Let the next() call handle re-creating and seeking<a name="line.893"></a>
+<span class="sourceLineNo">894</span>  }<a name="line.894"></a>
+<span class="sourceLineNo">895</span><a name="line.895"></a>
+<span class="sourceLineNo">896</span>  /**<a name="line.896"></a>
+<span class="sourceLineNo">897</span>   * @return if top of heap has changed (and KeyValueHeap has to try the next KV)<a name="line.897"></a>
+<span class="sourceLineNo">898</span>   */<a name="line.898"></a>
+<span class="sourceLineNo">899</span>  protected final boolean reopenAfterFlush() throws IOException {<a name="line.899"></a>
+<span class="sourceLineNo">900</span>    // here we can make sure that we have a Store instance so no null check on store.<a name="line.900"></a>
+<span class="sourceLineNo">901</span>    Cell lastTop = heap.peek();<a name="line.901"></a>
+<span class="sourceLineNo">902</span>    // When we have the scan object, should we not pass it to getScanners() to get a limited set of<a name="line.902"></a>
+<span class="sourceLineNo">903</span>    // scanners? We did so in the constructor and we could have done it now by storing the scan<a name="line.903"></a>
+<span class="sourceLineNo">904</span>    // object from the constructor<a name="line.904"></a>
+<span class="sourceLineNo">905</span>    List&lt;KeyValueScanner&gt; scanners;<a name="line.905"></a>
+<span class="sourceLineNo">906</span>    flushLock.lock();<a name="line.906"></a>
+<span class="sourceLineNo">907</span>    try {<a name="line.907"></a>
+<span class="sourceLineNo">908</span>      List&lt;KeyValueScanner&gt; allScanners =<a name="line.908"></a>
+<span class="sourceLineNo">909</span>          new ArrayList&lt;&gt;(flushedstoreFileScanners.size() + memStoreScannersAfterFlush.size());<a name="line.909"></a>
+<span class="sourceLineNo">910</span>      allScanners.addAll(flushedstoreFileScanners);<a name="line.910"></a>
+<span class="sourceLineNo">911</span>      allScanners.addAll(memStoreScannersAfterFlush);<a name="line.911"></a>
+<span class="sourceLineNo">912</span>      scanners = selectScannersFrom(store, allScanners);<a name="line.912"></a>
+<span class="sourceLineNo">913</span>      // Clear the current set of flushed store files scanners so that they don't get added again<a name="line.913"></a>
+<span class="sourceLineNo">914</span>      flushedstoreFileScanners.clear();<a name="line.914"></a>
+<span class="sourceLineNo">915</span>      memStoreScannersAfterFlush.clear();<a name="line.915"></a>
+<span class="sourceLineNo">916</span>    } finally {<a name="line.916"></a>
+<span class="sourceLineNo">917</span>      flushLock.unlock();<a name="line.917"></a>
+<span class="sourceLineNo">918</span>    }<a name="line.918"></a>
+<span class="sourceLineNo">919</span><a name="line.919"></a>
+<span class="sourceLineNo">920</span>    // Seek the new scanners to the last key<a name="line.920"></a>
+<span class="sourceLineNo">921</span>    seekScanners(scanners, lastTop, false, parallelSeekEnabled);<a name="line.921"></a>
+<span class="sourceLineNo">922</span>    // remove the older memstore scanner<a name="line.922"></a>
+<span class="sourceLineNo">923</span>    for (int i = currentScanners.size() - 1; i &gt;=0; i--) {<a name="line.923"></a>
+<span class="sourceLineNo">924</span>      if (!currentScanners.get(i).isFileScanner()) {<a name="line.924"></a>
+<span class="sourceLineNo">925</span>        scannersForDelayedClose.add(currentScanners.remove(i));<a name="line.925"></a>
+<span class="sourceLineNo">926</span>      } else {<a name="line.926"></a>
+<span class="sourceLineNo">927</span>        // we add the memstore scanner to the end of currentScanners<a name="line.927"></a>
+<span class="sourceLineNo">928</span>        break;<a name="line.928"></a>
+<span class="sourceLineNo">929</span>      }<a name="line.929"></a>
+<span class="sourceLineNo">930</span>    }<a name="line.930"></a>
+<span class="sourceLineNo">931</span>    // add the newly created scanners on the flushed files and the current active memstore scanner<a name="line.931"></a>
+<span class="sourceLineNo">932</span>    addCurrentScanners(scanners);<a name="line.932"></a>
+<span class="sourceLineNo">933</span>    // Combine all seeked scanners with a heap<a name="line.933"></a>
+<span class="sourceLineNo">934</span>    resetKVHeap(this.currentScanners, store.getComparator());<a name="line.934"></a>
+<span class="sourceLineNo">935</span>    resetQueryMatcher(lastTop);<a name="line.935"></a>
+<span class="sourceLineNo">936</span>    if (heap.peek() == null || store.getComparator().compareRows(lastTop, this.heap.peek()) != 0) {<a name="line.936"></a>
+<span class="sourceLineNo">937</span>      LOG.info("Storescanner.peek() is changed where before = " + lastTop.toString() +<a name="line.937"></a>
+<span class="sourceLineNo">938</span>          ",and after = " + heap.peek());<a name="line.938"></a>
+<span class="sourceLineNo">939</span>      topChanged = true;<a name="line.939"></a>
+<span class="sourceLineNo">940</span>    } else {<a name="line.940"></a>
+<span class="sourceLineNo">941</span>      topChanged = false;<a name="line.941"></a>
+<span class="sourceLineNo">942</span>    }<a name="line.942"></a>
+<span class="sourceLineNo">943</span>    return topChanged;<a name="line.943"></a>
+<span class="sourceLineNo">944</span>  }<a name="line.944"></a>
+<span class="sourceLineNo">945</span><a name="line.945"></a>
+<span class="sourceLineNo">946</span>  private void resetQueryMatcher(Cell lastTopKey) {<a name="line.946"></a>
+<span class="sourceLineNo">947</span>    // Reset the state of the Query Matcher and set to top row.<a name="line.947"></a>
+<span class="sourceLineNo">948</span>    // Only reset and call setRow if the row changes; avoids confusing the<a name="line.948"></a>
+<span class="sourceLineNo">949</span>    // query matcher if scanning intra-row.<a name="line.949"></a>
+<span class="sourceLineNo">950</span>    Cell cell = heap.peek();<a name="line.950"></a>
+<span class="sourceLineNo">951</span>    if (cell == null) {<a name="line.951"></a>
+<span class="sourceLineNo">952</span>      cell = lastTopKey;<a name="line.952"></a>
+<span class="sourceLineNo">953</span>    }<a name="line.953"></a>
+<span class="sourceLineNo">954</span>    if ((matcher.currentRow() == null) || !CellUtil.matchingRows(cell, matcher.currentRow())) {<a name="line.954"></a>
+<span class="sourceLineNo">955</span>      this.countPerRow = 0;<a name="line.955"></a>
+<span class="sourceLineNo">956</span>      // The setToNewRow will call reset internally<a name="line.956"></a>
+<span class="sourceLineNo">957</span>      matcher.setToNewRow(cell);<a name="line.957"></a>
+<span class="sourceLineNo">958</span>    }<a name="line.958"></a>
+<span class="sourceLineNo">959</span>  }<a name="line.959"></a>
+<span class="sourceLineNo">960</span><a name="line.960"></a>
+<span class="sourceLineNo">961</span>  /**<a name="line.961"></a>
+<span class="sourceLineNo">962</span>   * Check whether scan as expected order<a name="line.962"></a>
+<span class="sourceLineNo">963</span>   * @param prevKV<a name="line.963"></a>
+<span class="sourceLineNo">964</span>   * @param kv<a name="line.964"></a>
+<span class="sourceLineNo">965</span>   * @param comparator<a name="line.965"></a>
+<span class="sourceLineNo">966</span>   * @throws IOException<a name="line.966"></a>
+<span class="sourceLineNo">967</span>   */<a name="line.967"></a>
+<span class="sourceLineNo">968</span>  protected void checkScanOrder(Cell prevKV, Cell kv,<a name="line.968"></a>
+<span class="sourceLineNo">969</span>      CellComparator comparator) throws IOException {<a name="line.969"></a>
+<span class="sourceLineNo">970</span>    // Check that the heap gives us KVs in an increasing order.<a name="line.970"></a>
+<span class="sourceLineNo">971</span>    assert prevKV == null || comparator == null<a name="line.971"></a>
+<span class="sourceLineNo">972</span>        || comparator.compare(prevKV, kv) &lt;= 0 : "Key " + prevKV<a name="line.972"></a>
+<span class="sourceLineNo">973</span>        + " followed by a " + "smaller key " + kv + " in cf " + store;<a name="line.973"></a>
+<span class="sourceLineNo">974</span>  }<a name="line.974"></a>
+<span class="sourceLineNo">975</span><a name="line.975"></a>
+<span class="sourceLineNo">976</span>  protected boolean seekToNextRow(Cell c) throws IOException {<a name="line.976"></a>
+<span class="sourceLineNo">977</span>    return reseek(PrivateCellUtil.createLastOnRow(c));<a name="line.977"></a>
+<span class="sourceLineNo">978</span>  }<a name="line.978"></a>
+<span class="sourceLineNo">979</span><a name="line.979"></a>
+<span class="sourceLineNo">980</span>  /**<a name="line.980"></a>
+<span class="sourceLineNo">981</span>   * Do a reseek in a normal StoreScanner(scan forward)<a name="line.981"></a>
+<span class="sourceLineNo">982</span>   * @param kv<a name="line.982"></a>
+<span class="sourceLineNo">983</span>   * @return true if scanner has values left, false if end of scanner<a name="line.983"></a>
+<span class="sourceLineNo">984</span>   * @throws IOException<a name="line.984"></a>
+<span class="sourceLineNo">985</span>   */<a name="line.985"></a>
+<span class="sourceLineNo">986</span>  protected boolean seekAsDirection(Cell kv)<a name="line.986"></a>
+<span class="sourceLineNo">987</span>      throws IOException {<a name="line.987"></a>
+<span class="sourceLineNo">988</span>    return reseek(kv);<a name="line.988"></a>
+<span class="sourceLineNo">989</span>  }<a name="line.989"></a>
+<span class="sourceLineNo">990</span><a name="line.990"></a>
+<span class="sourceLineNo">991</span>  @Override<a name="line.991"></a>
+<span class="sourceLineNo">992</span>  public boolean reseek(Cell kv) throws IOException {<a name="line.992"></a>
+<span class="sourceLineNo">993</span>    if (checkFlushed()) {<a name="line.993"></a>
+<span class="sourceLineNo">994</span>      reopenAfterFlush();<a name="line.994"></a>
+<span class="sourceLineNo">995</span>    }<a name="line.995"></a>
+<span class="sourceLineNo">996</span>    if (explicitColumnQuery &amp;&amp; lazySeekEnabledGlobally) {<a name="line.996"></a>
+<span class="sourceLineNo">997</span>      return heap.requestSeek(kv, true, useRowColBloom);<a name="line.997"></a>
+<span class="sourceLineNo">998</span>    }<a name="line.998"></a>
+<span class="sourceLineNo">999</span>    return heap.reseek(kv);<a name="line.999"></a>
+<span class="sourceLineNo">1000</span>  }<a name="line.1000"></a>
+<span class="sourceLineNo">1001</span><a name="line.1001"></a>
+<span class="sourceLineNo">1002</span>  @VisibleForTesting<a name="line.1002"></a>
+<span class="sourceLineNo">1003</span>  void trySwitchToStreamRead() {<a name="line.1003"></a>
+<span class="sourceLineNo">1004</span>    if (readType != Scan.ReadType.DEFAULT || !scanUsePread || closing ||<a name="line.1004"></a>
+<span class="sourceLineNo">1005</span>        heap.peek() == null || bytesRead &lt; preadMaxBytes) {<a name="line.1005"></a>
+<span class="sourceLineNo">1006</span>      return;<a name="line.1006"></a>
+<span class="sourceLineNo">1007</span>    }<a name="line.1007"></a>
+<span class="sourceLineNo">1008</span>    LOG.debug("Switch to stream read (scanned={} bytes) of {}", bytesRead,<a name="line.1008"></a>
+<span class="sourceLineNo">1009</span>        this.store.getColumnFamilyName());<a name="line.1009"></a>
+<span class="sourceLineNo">1010</span>    scanUsePread = false;<a name="line.1010"></a>
+<span class="sourceLineNo">1011</span>    Cell lastTop = heap.peek();<a name="line.1011"></a>
+<span class="sourceLineNo">1012</span>    List&lt;KeyValueScanner&gt; memstoreScanners = new ArrayList&lt;&gt;();<a name="line.1012"></a>
+<span class="sourceLineNo">1013</span>    List&lt;KeyValueScanner&gt; scannersToClose = new ArrayList&lt;&gt;();<a name="line.1013"></a>
+<span class="sourceLineNo">1014</span>    for (KeyValueScanner kvs : currentScanners) {<a name="line.1014"></a>
+<span class="sourceLineNo">1015</span>      if (!kvs.isFileScanner()) {<a name="line.1015"></a>
+<span class="sourceLineNo">1016</span>        // collect memstorescanners here<a name="line.1016"></a>
+<span class="sourceLineNo">1017</span>        memstoreScanners.add(kvs);<a name="line.1017"></a>
+<span class="sourceLineNo">1018</span>      } else {<a name="line.1018"></a>
+<span class="sourceLineNo">1019</span>        scannersToClose.add(kvs);<a name="line.1019"></a>
+<span class="sourceLineNo">1020</span>      }<a name="line.1020"></a>
+<span class="sourceLineNo">1021</span>    }<a name="line.1021"></a>
+<span class="sourceLineNo">1022</span>    List&lt;KeyValueScanner&gt; fileScanners = null;<a name="line.1022"></a>
+<span class="sourceLineNo">1023</span>    List&lt;KeyValueScanner&gt; newCurrentScanners;<a name="line.1023"></a>
+<span class="sourceLineNo">1024</span>    KeyValueHeap newHeap;<a name="line.1024"></a>
+<span class="sourceLineNo">1025</span>    try {<a name="line.1025"></a>
+<span class="sourceLineNo">1026</span>      // We must have a store instance here so no null check<a name="line.1026"></a>
+<span class="sourceLineNo">1027</span>      // recreate the scanners on the current file scanners<a name="line.1027"></a>
+<span class="sourceLineNo">1028</span>      fileScanners = store.recreateScanners(scannersToClose, cacheBlocks, false, false,<a name="line.1028"></a>
+<span class="sourceLineNo">1029</span>        matcher, scan.getStartRow(), scan.includeStartRow(), scan.getStopRow(),<a name="line.1029"></a>
+<span class="sourceLineNo">1030</span>        scan.includeStopRow(), readPt, false);<a name="line.1030"></a>
+<span class="sourceLineNo">1031</span>      if (fileScanners == null) {<a name="line.1031"></a>
+<span class="sourceLineNo">1032</span>        return;<a name="line.1032"></a>
+<span class="sourceLineNo">1033</span>      }<a name="line.1033"></a>
+<span class="sourceLineNo">1034</span>      seekScanners(fileScanners, lastTop, false, parallelSeekEnabled);<a name="line.1034"></a>
+<span class="sourceLineNo">1035</span>      newCurrentScanners = new ArrayList&lt;&gt;(fileScanners.size() + memstoreScanners.size());<a name="line.1035"></a>
+<span class="sourceLineNo">1036</span>      newCurrentScanners.addAll(fileScanners);<a name="line.1036"></a>
+<span class="sourceLineNo">1037</span>      newCurrentScanners.addAll(memstoreScanners);<a name="line.1037"></a>
+<span class="sourceLineNo">1038</span>      newHeap = new KeyValueHeap(newCurrentScanners, comparator);<a name="line.1038"></a>
+<span class="sourceLineNo">1039</span>    } catch (Exception e) {<a name="line.1039"></a>
+<span class="sourceLineNo">1040</span>      LOG.warn("failed to switch to stream read", e);<a name="line.1040"></a>
+<span class="sourceLineNo">1041</span>      if (fileScanners != null) {<a name="line.1041"></a>
+<span class="sourceLineNo">1042</span>        fileScanners.forEach(KeyValueScanner::close);<a name="line.1042"></a>
+<span class="sourceLineNo">1043</span>      }<a name="line.1043"></a>
+<span class="sourceLineNo">1044</span>      return;<a name="line.1044"></a>
+<span class="sourceLineNo">1045</span>    }<a name="line.1045"></a>
+<span class="sourceLineNo">1046</span>    currentScanners.clear();<a name="line.1046"></a>
+<span class="sourceLineNo">1047</span>    addCurrentScanners(newCurrentScanners);<a name="line.1047"></a>
+<span class="sourceLineNo">1048</span>    this.heap = newHeap;<a name="line.1048"></a>
+<span class="sourceLineNo">1049</span>    resetQueryMatcher(lastTop);<a name="line.1049"></a>
+<span class="sourceLineNo">1050</span>    scannersToClose.forEach(KeyValueScanner::close);<a name="line.1050"></a>
+<span class="sourceLineNo">1051</span>  }<a name="line.1051"></a>
+<span class="sourceLineNo">1052</span><a name="line.1052"></a>
+<span class="sourceLineNo">1053</span>  protected final boolean checkFlushed() {<a name="line.1053"></a>
+<span class="sourceLineNo">1054</span>    // check the var without any lock. Suppose even if we see the old<a name="line.1054"></a>
+<span class="sourceLineNo">1055</span>    // value here still it is ok to continue because we will not be resetting<a name="line.1055"></a>
+<span class="sourceLineNo">1056</span>    // the heap but will continue with the referenced memstore's snapshot. For compactions<a name="line.1056"></a>
+<span class="sourceLineNo">1057</span>    // any way we don't need the updateReaders at all to happen as we still continue with<a name="line.1057"></a>
+<span class="sourceLineNo">1058</span>    // the older files<a name="line.1058"></a>
+<span class="sourceLineNo">1059</span>    if (flushed) {<a name="line.1059"></a>
+<span class="sourceLineNo">1060</span>      // If there is a flush and the current scan is notified on the flush ensure that the<a name="line.1060"></a>
+<span class="sourceLineNo">1061</span>      // scan's heap gets reset and we do a seek on the newly flushed file.<a name="line.1061"></a>
+<span class="sourceLineNo">1062</span>      if (this.closing) {<a name="line.1062"></a>
+<span class="sourceLineNo">1063</span>        return false;<a name="line.1063"></a>
+<span class="sourceLineNo">1064</span>      }<a name="line.1064"></a>
+<span class="sourceLineNo">1065</span>      // reset the flag<a name="line.1065"></a>
+<span class="sourceLineNo">1066</span>      flushed = false;<a name="line.1066"></a>
+<span class="sourceLineNo">1067</span>      return true;<a name="line.1067"></a>
+<span class="sourceLineNo">1068</span>    }<a name="line.1068"></a>
+<span class="sourceLineNo">1069</span>    return false;<a name="line.1069"></a>
+<span class="sourceLineNo">1070</span>  }<a name="line.1070"></a>
+<span class="sourceLineNo">1071</span><a name="line.1071"></a>
+<span class="sourceLineNo">1072</span><a name="line.1072"></a>
+<span class="sourceLineNo">1073</span>  /**<a name="line.1073"></a>
+<span class="sourceLineNo">1074</span>   * Seek storefiles in parallel to optimize IO latency as much as possible<a name="line.1074"></a>
+<span class="sourceLineNo">1075</span>   * @param scanners the list {@link KeyValueScanner}s to be read from<a name="line.1075"></a>
+<span class="sourceLineNo">1076</span>   * @param kv the KeyValue on which the operation is being requested<a name="line.1076"></a>
+<span class="sourceLineNo">1077</span>   * @throws IOException<a name="line.1077"></a>
+<span class="sourceLineNo">1078</span>   */<a name="line.1078"></a>
+<span class="sourceLineNo">1079</span>  private void parallelSeek(final List&lt;? extends KeyValueScanner&gt;<a name="line.1079"></a>
+<span class="sourceLineNo">1080</span>      scanners, final Cell kv) throws IOException {<a name="line.1080"></a>
+<span class="sourceLineNo">1081</span>    if (scanners.isEmpty()) return;<a name="line.1081"></a>
+<span class="sourceLineNo">1082</span>    int storeFileScannerCount = scanners.size();<a name="line.1082"></a>
+<span class="sourceLineNo">1083</span>    CountDownLatch latch = new CountDownLatch(storeFileScannerCount);<a name="line.1083"></a>
+<span class="sourceLineNo">1084</span>    List&lt;ParallelSeekHandler&gt; handlers = new ArrayList&lt;&gt;(storeFileScannerCount);<a name="line.1084"></a>
+<span class="sourceLineNo">1085</span>    for (KeyValueScanner scanner : scanners) {<a name="line.1085"></a>
+<span class="sourceLineNo">1086</span>      if (scanner instanceof StoreFileScanner) {<a name="line.1086"></a>
+<span class="sourceLineNo">1087</span>        ParallelSeekHandler seekHandler = new ParallelSeekHandler(scanner, kv,<a name="line.1087"></a>
+<span class="sourceLineNo">1088</span>          this.readPt, latch);<a name="line.1088"></a>
+<span class="sourceLineNo">1089</span>        executor.submit(seekHandler);<a name="line.1089"></a>
+<span class="sourceLineNo">1090</span>        handlers.add(seekHandler);<a name="line.1090"></a>
+<span class="sourceLineNo">1091</span>      } else {<a name="line.1091"></a>
+<span class="sourceLineNo">1092</span>        scanner.seek(kv);<a name="line.1092"></a>
+<span class="sourceLineNo">1093</span>        latch.countDown();<a name="line.1093"></a>
+<span class="sourceLineNo">1094</span>      }<a name="line.1094"></a>
+<span class="sourceLineNo">1095</span>    }<a name="line.1095"></a>
+<span class="sourceLineNo">1096</span><a name="line.1096"></a>
+<span class="sourceLineNo">1097</span>    try {<a name="line.1097"></a>
+<span class="sourceLineNo">1098</span>      latch.await();<a name="line.1098"></a>
+<span class="sourceLineNo">1099</span>    } catch (InterruptedException ie) {<a name="line.1099"></a>
+<span class="sourceLineNo">1100</span>      throw (InterruptedIOException)new InterruptedIOException().initCause(ie);<a name="line.1100"></a>
+<span class="sourceLineNo">1101</span>    }<a name="line.1101"></a>
+<span class="sourceLineNo">1102</span><a name="line.1102"></a>
+<span class="sourceLineNo">1103</span>    for (ParallelSeekHandler handler : handlers) {<a name="line.1103"></a>
+<span class="sourceLineNo">1104</span>      if (handler.getErr() != null) {<a name="line.1104"></a>
+<span class="sourceLineNo">1105</span>        throw new IOException(handler.getErr());<a name="line.1105"></a>
+<span class="sourceLineNo">1106</span>      }<a name="line.1106"></a>
+<span class="sourceLineNo">1107</span>    }<a name="line.1107"></a>
+<span class="sourceLineNo">1108</span>  }<a name="line.1108"></a>
+<span class="sourceLineNo">1109</span><a name="line.1109"></a>
+<span class="sourceLineNo">1110</span>  /**<a name="line.1110"></a>
+<span class="sourceLineNo">1111</span>   * Used in testing.<a name="line.1111"></a>
+<span class="sourceLineNo">1112</span>   * @return all scanners in no particular order<a name="line.1112"></a>
+<span class="sourceLineNo">1113</span>   */<a name="line.1113"></a>
+<span class="sourceLineNo">1114</span>  @VisibleForTesting<a name="line.1114"></a>
+<span class="sourceLineNo">1115</span>  List&lt;KeyValueScanner&gt; getAllScannersForTesting() {<a name="line.1115"></a>
+<span class="sourceLineNo">1116</span>    List&lt;KeyValueScanner&gt; allScanners = new ArrayList&lt;&gt;();<a name="line.1116"></a>
+<span class="sourceLineNo">1117</span>    KeyValueScanner current = heap.getCurrentForTesting();<a name="line.1117"></a>
+<span class="sourceLineNo">1118</span>    if (current != null)<a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>      allScanners.add(current);<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>    for (KeyValueScanner scanner : heap.getHeap())<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span>      allScanners.add(scanner);<a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>    return allScanners;<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>  }<a name="line.1123"></a>
+<span class="sourceLineNo">1124</span><a name="line.1124"></a>
+<span class="sourceLineNo">1125</span>  static void enableLazySeekGlobally(boolean enable) {<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span>    lazySeekEnabledGlobally = enable;<a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>  }<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span><a name="line.1128"></a>
+<span class="sourceLineNo">1129</span>  /**<a name="line.1129"></a>
+<span class="sourceLineNo">1130</span>   * @return The estimated number of KVs seen by this scanner (includes some skipped KVs).<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span>   */<a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>  public long getEstimatedNumberOfKvsScanned() {<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>    return this.kvsScanned;<a name="line.1133"></a>
+<span class="sourceLineNo">1134</span>  }<a name="line.1134"></a>
+<span class="sourceLineNo">1135</span><a name="line.1135"></a>
+<span class="sourceLineNo">1136</span>  @Override<a name="line.1136"></a>
+<span class="sourceLineNo">1137</span>  public Cell getNextIndexedKey() {<a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>    return this.heap.getNextIndexedKey();<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span>  }<a name="line.1139"></a>
+<span class="sourceLineNo">1140</span><a name="line.1140"></a>
+<span class="sourceLineNo">1141</span>  @Override<a name="line.1141"></a>
+<span class="sourceLineNo">1142</span>  public void shipped() throws IOException {<a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>    if (prevCell != null) {<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      // Do the copy here so that in case the prevCell ref is pointing to the previous<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>      // blocks we can safely release those blocks.<a name="line.1145"></a>
+<span class="sourceLineNo">1146</span>      // This applies to blocks that are got from Bucket cache, L1 cache and the blocks<a name="line.1146"></a>
+<span class="sourceLineNo">1147</span>      // fetched from HDFS. Copying this would ensure that we let go the references to these<a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>      // blocks so that they can be GCed safely(in case of bucket cache)<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>      prevCell = KeyValueUtil.toNewKeyCell(this.prevCell);<a name="line.1149"></a>
+<span class="sourceLineNo">1150</span>    }<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>    matcher.beforeShipped();<a name="line.1151"></a>
+<span class="sourceLineNo">1152</span>    // There wont be further fetch of Cells from these scanners. Just close.<a name="line.1152"></a>
+<span class="sourceLineNo">1153</span>    clearAndClose(scannersForDelayedClose);<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>    if (this.heap != null) {<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>      this.heap.shipped();<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span>      // When switching from pread to stream, we will open a new scanner for each store file, but<a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>      // the old scanner may still track the HFileBlocks we have scanned but not sent back to client<a name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      // yet. If we close the scanner immediately then the HFileBlocks may be messed up by others<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>      // before we serialize and send it back to client. The HFileBlocks will be released in shipped<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>      // method, so we here will also open new scanners and close old scanners in shipped method.<a name="line.1160"></a>
+<span class="sourceLineNo">1161</span>      // See HBASE-18055 for more details.<a name="line.1161"></a>
+<span class="sourceLineNo">1162</span>      trySwitchToStreamRead();<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>    }<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>  }<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>}<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span><a name="line.1166"></a>
 
 
 
index a64ca9b..cd7a8b7 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase Downloads</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -463,7 +463,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-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 6fef896..20a2ed0 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Export Control
@@ -341,7 +341,7 @@ for more details.</p>
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index f83d03e..34d3ebc 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBaseâ„¢ Home</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -421,7 +421,7 @@ Apache HBase is an open-source, distributed, versioned, non-relational database
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 9aa09c3..963fa36 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index bc74bc3..1be458e 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index b442aef..11559b4 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index dfeb846..dd502f3 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index f940182..5c1a977 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) Metrics
@@ -469,7 +469,7 @@ export HBASE_REGIONSERVER_OPTS=&quot;$HBASE_JMX_OPTS -Dcom.sun.management.jmxrem
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 3eff97d..94ad779 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Old Apache HBase (TM) News
@@ -450,7 +450,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index d69226a..1cb4ecc 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 53f1f95..7d74a3b 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index e6f0c4f..89dbbac 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Powered By Apache HBase\99</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -779,7 +779,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 0bfad8d..f4f2edc 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 3378fc4..bf9db35 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index e2a1859..dfd0924 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index b56a5d3..2c157f6 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
 Running Apache HBase (TM) in pseudo-distributed mode
@@ -318,7 +318,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 45d173b..a76e21c 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Apache HBase (TM) Replication
@@ -313,7 +313,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 1e0fcb3..b774d37 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Other Apache HBase (TM) Resources</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -341,7 +341,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 3816e44..3c76c13 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 20a21e5..a47f96b 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase\99 Sponsors</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -343,7 +343,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index f6170cb..b026d07 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Supporting Projects</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
@@ -530,7 +530,7 @@ under the License. -->
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>
 
index 7841e60..712ecd0 100644 (file)
@@ -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="20181213" />
+    <meta name="Date-Revision-yyyymmdd" content="20181214" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.4-HBase.min.css" />
                         <a href="https://www.apache.org/">The Apache Software Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 2018-12-13</li>
+                  <li id="publishDate" class="pull-right">Last Published: 2018-12-14</li>
             </p>
                 </div>