http://git-wip-us.apache.org/repos/asf/hbase-site/blob/6b94a2f2/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html index 2b5efbb..f0821d4 100644 --- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html +++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html @@ -50,7 +50,7 @@ var activeTableTab = "activeTableTab"; <div class="subNav"> <ul class="navList"> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html" target="_top">Frames</a></li> @@ -74,7 +74,7 @@ var activeTableTab = "activeTableTab"; <div> <ul class="subNavList"> <li>Summary: </li> -<li><a href="#nested.class.summary">Nested</a> | </li> +<li><a href="#nested.classes.inherited.from.class.java.lang.Thread">Nested</a> | </li> <li><a href="#field.summary">Field</a> | </li> <li><a href="#constructor.summary">Constr</a> | </li> <li><a href="#method.summary">Method</a></li> @@ -126,7 +126,8 @@ var activeTableTab = "activeTableTab"; @InterfaceStability.Evolving public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.54">ReplicationSourceWALReader</a> extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" title="class or interface in java.lang">Thread</a></pre> -<div class="block">Reads and filters WAL entries, groups the filtered entries into batches, and puts the batches onto a queue</div> +<div class="block">Reads and filters WAL entries, groups the filtered entries into batches, and puts the batches + onto a queue</div> </li> </ul> </div> @@ -139,19 +140,6 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <!-- --> </a> <h3>Nested Class Summary</h3> -<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> -<caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> -<tr> -<th class="colFirst" scope="col">Modifier and Type</th> -<th class="colLast" scope="col">Class and Description</th> -</tr> -<tr class="altColor"> -<td class="colFirst"><code>(package private) static class </code></td> -<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a></span></code> -<div class="block">Holds a batch of WAL entries to replicate, along with some statistics</div> -</td> -</tr> -</table> <ul class="blockList"> <li class="blockList"><a name="nested.classes.inherited.from.class.java.lang.Thread"> <!-- --> @@ -182,7 +170,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#currentPosition">currentPosition</a></span></code> </td> </tr> <tr class="altColor"> -<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a><<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a>></code></td> +<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a><<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a>></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#entryBatchQueue">entryBatchQueue</a></span></code> </td> </tr> <tr class="rowColor"> @@ -222,18 +210,22 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#replicationBatchSizeCapacity">replicationBatchSizeCapacity</a></span></code> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SerialReplicationChecker</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#serialReplicationChecker">serialReplicationChecker</a></span></code> </td> +</tr> +<tr class="rowColor"> <td class="colFirst"><code>private long</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#sleepForRetries">sleepForRetries</a></span></code> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#source">source</a></span></code> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>private long</code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#totalBufferQuota">totalBufferQuota</a></span></code> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#totalBufferUsed">totalBufferUsed</a></span></code> </td> </tr> @@ -317,8 +309,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html </tr> <tr id="i7" class="rowColor"> <td class="colFirst"><code>protected void</code></td> -<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#handleEmptyWALEntryBatch-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceWALReader.WALEntryBatch-org.apache.hadoop.fs.Path-">handleEmptyWALEntryBatch</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> batch, - org.apache.hadoop.fs.Path currentPath)</code> </td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#handleEmptyWALEntryBatch-org.apache.hadoop.fs.Path-">handleEmptyWALEntryBatch</a></span>(org.apache.hadoop.fs.Path currentPath)</code> </td> </tr> <tr id="i8" class="altColor"> <td class="colFirst"><code>private void</code></td> @@ -329,7 +320,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#isReaderRunning--">isReaderRunning</a></span>()</code> </td> </tr> <tr id="i10" class="altColor"> -<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a></code></td> +<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#readWALEntries-org.apache.hadoop.hbase.replication.regionserver.WALEntryStream-">readWALEntries</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a> entryStream)</code> </td> </tr> <tr id="i11" class="rowColor"> @@ -341,7 +332,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#setReaderRunning-boolean-">setReaderRunning</a></span>(boolean readerRunning)</code> </td> </tr> <tr id="i13" class="rowColor"> -<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a></code></td> +<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a></code></td> <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#take--">take</a></span>()</code> <div class="block">Retrieves the next batch of WAL entries from the queue, waiting up to the specified time for a batch to become available</div> @@ -349,9 +340,8 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html </tr> <tr id="i14" class="altColor"> <td class="colFirst"><code>private void</code></td> -<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#updateBatchStats-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceWALReader.WALEntryBatch-org.apache.hadoop.hbase.wal.WAL.Entry-long-long-">updateBatchStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> batch, +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#updateBatchStats-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-org.apache.hadoop.hbase.wal.WAL.Entry-long-">updateBatchStats</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a> batch, <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, - long entryPosition, long entrySize)</code> </td> </tr> </table> @@ -443,7 +433,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>entryBatchQueue</h4> -<pre>protected final <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a><<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.63">entryBatchQueue</a></pre> +<pre>protected final <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a><<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.63">entryBatchQueue</a></pre> </li> </ul> <a name="replicationBatchSizeCapacity"> @@ -521,12 +511,21 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <a name="totalBufferQuota"> <!-- --> </a> -<ul class="blockListLast"> +<ul class="blockList"> <li class="blockList"> <h4>totalBufferQuota</h4> <pre>private long <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.78">totalBufferQuota</a></pre> </li> </ul> +<a name="serialReplicationChecker"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>serialReplicationChecker</h4> +<pre>private final <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver">SerialReplicationChecker</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.80">serialReplicationChecker</a></pre> +</li> +</ul> </li> </ul> <!-- ========= CONSTRUCTOR DETAIL ======== --> @@ -541,7 +540,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockListLast"> <li class="blockList"> <h4>ReplicationSourceWALReader</h4> -<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.90">ReplicationSourceWALReader</a>(org.apache.hadoop.fs.FileSystem fs, +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.92">ReplicationSourceWALReader</a>(org.apache.hadoop.fs.FileSystem fs, org.apache.hadoop.conf.Configuration conf, <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/PriorityBlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">PriorityBlockingQueue</a><org.apache.hadoop.fs.Path> logQueue, long startPosition, @@ -574,7 +573,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>run</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.122">run</a>()</pre> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.125">run</a>()</pre> <dl> <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true#run--" title="class or interface in java.lang">run</a></code> in interface <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></code></dd> @@ -589,22 +588,23 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>readWALEntries</h4> -<pre>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.163">readWALEntries</a>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a> entryStream) - 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> +<pre>private <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.165">readWALEntries</a>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryStream.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryStream</a> entryStream) + 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>, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre> <dl> <dt><span class="throwsLabel">Throws:</span></dt> <dd><code><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></code></dd> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd> </dl> </li> </ul> -<a name="handleEmptyWALEntryBatch-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceWALReader.WALEntryBatch-org.apache.hadoop.fs.Path-"> +<a name="handleEmptyWALEntryBatch-org.apache.hadoop.fs.Path-"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>handleEmptyWALEntryBatch</h4> -<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.189">handleEmptyWALEntryBatch</a>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> batch, - org.apache.hadoop.fs.Path currentPath) +<pre>protected void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.224">handleEmptyWALEntryBatch</a>(org.apache.hadoop.fs.Path currentPath) throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre> <dl> <dt><span class="throwsLabel">Throws:</span></dt> @@ -618,7 +618,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>handleEofException</h4> -<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.198">handleEofException</a>(<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> e)</pre> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.232">handleEofException</a>(<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> e)</pre> </li> </ul> <a name="getCurrentPath--"> @@ -627,7 +627,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>getCurrentPath</h4> -<pre>public org.apache.hadoop.fs.Path <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.213">getCurrentPath</a>()</pre> +<pre>public org.apache.hadoop.fs.Path <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.247">getCurrentPath</a>()</pre> </li> </ul> <a name="checkQuota--"> @@ -636,7 +636,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>checkQuota</h4> -<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.224">checkQuota</a>()</pre> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.258">checkQuota</a>()</pre> </li> </ul> <a name="filterEntry-org.apache.hadoop.hbase.wal.WAL.Entry-"> @@ -645,7 +645,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>filterEntry</h4> -<pre>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.233">filterEntry</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry)</pre> +<pre>private <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.267">filterEntry</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry)</pre> </li> </ul> <a name="take--"> @@ -654,8 +654,8 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>take</h4> -<pre>public <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.247">take</a>() - throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.281">take</a>() + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre> <div class="block">Retrieves the next batch of WAL entries from the queue, waiting up to the specified time for a batch to become available</div> <dl> @@ -672,18 +672,17 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>getEntrySize</h4> -<pre>private long <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.251">getEntrySize</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry)</pre> +<pre>private long <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.285">getEntrySize</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry)</pre> </li> </ul> -<a name="updateBatchStats-org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceWALReader.WALEntryBatch-org.apache.hadoop.hbase.wal.WAL.Entry-long-long-"> +<a name="updateBatchStats-org.apache.hadoop.hbase.replication.regionserver.WALEntryBatch-org.apache.hadoop.hbase.wal.WAL.Entry-long-"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>updateBatchStats</h4> -<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.256">updateBatchStats</a>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSourceWALReader.WALEntryBatch</a> batch, +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.290">updateBatchStats</a>(<a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver">WALEntryBatch</a> batch, <a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, - long entryPosition, long entrySize)</pre> </li> </ul> @@ -693,7 +692,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>countDistinctRowKeysAndHFiles</h4> -<pre>private <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.273">countDistinctRowKeysAndHFiles</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a> edit)</pre> +<pre>private <a href="../../../../../../org/apache/hadoop/hbase/util/Pair.html" title="class in org.apache.hadoop.hbase.util">Pair</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.304">countDistinctRowKeysAndHFiles</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a> edit)</pre> <div class="block">Count the number of different row keys in the given edit because of mini-batching. We assume that there's at least one Cell in the WALEdit.</div> <dl> @@ -710,7 +709,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>calculateTotalSizeOfStoreFiles</h4> -<pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.311">calculateTotalSizeOfStoreFiles</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a> edit)</pre> +<pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.342">calculateTotalSizeOfStoreFiles</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a> edit)</pre> <div class="block">Calculate the total size of all the store files</div> <dl> <dt><span class="paramLabel">Parameters:</span></dt> @@ -726,7 +725,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>acquireBufferQuota</h4> -<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.341">acquireBufferQuota</a>(long size)</pre> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.372">acquireBufferQuota</a>(long size)</pre> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>size</code> - delta size for grown buffer</dd> @@ -741,7 +740,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockList"> <li class="blockList"> <h4>isReaderRunning</h4> -<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.348">isReaderRunning</a>()</pre> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.379">isReaderRunning</a>()</pre> <dl> <dt><span class="returnLabel">Returns:</span></dt> <dd>whether the reader thread is running</dd> @@ -754,7 +753,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <ul class="blockListLast"> <li class="blockList"> <h4>setReaderRunning</h4> -<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.355">setReaderRunning</a>(boolean readerRunning)</pre> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html#line.386">setReaderRunning</a>(boolean readerRunning)</pre> <dl> <dt><span class="paramLabel">Parameters:</span></dt> <dd><code>readerRunning</code> - the readerRunning to set</dd> @@ -790,7 +789,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <div class="subNav"> <ul class="navList"> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALActionListener.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html" target="_top">Frames</a></li> @@ -814,7 +813,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html <div> <ul class="subNavList"> <li>Summary: </li> -<li><a href="#nested.class.summary">Nested</a> | </li> +<li><a href="#nested.classes.inherited.from.class.java.lang.Thread">Nested</a> | </li> <li><a href="#field.summary">Field</a> | </li> <li><a href="#constructor.summary">Constr</a> | </li> <li><a href="#method.summary">Method</a></li>
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/6b94a2f2/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html index 3d8f914..264d418 100644 --- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html +++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.html @@ -49,7 +49,7 @@ var activeTableTab = "activeTableTab"; </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.DummyServer.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> @@ -345,7 +345,7 @@ implements org.apache.hadoop.util.Tool</pre> </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.DummyServer.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/6b94a2f2/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html index d21d1f8..f55e348 100644 --- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html +++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html @@ -50,7 +50,7 @@ var activeTableTab = "activeTableTab"; <div class="subNav"> <ul class="navList"> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.DummyServer.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" target="_top">Frames</a></li> @@ -398,7 +398,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html <div class="subNav"> <ul class="navList"> <li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSyncUp.DummyServer.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" target="_top">Frames</a></li> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/6b94a2f2/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html new file mode 100644 index 0000000..5594f3e --- /dev/null +++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html @@ -0,0 +1,593 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc --> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>SerialReplicationChecker (Apache HBase 3.0.0-SNAPSHOT API)</title> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="SerialReplicationChecker (Apache HBase 3.0.0-SNAPSHOT API)"; + } + } + catch(err) { + } +//--> +var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10}; +var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/SerialReplicationChecker.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../../../index-all.html">Index</a></li> +<li><a href="../../../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" target="_top">Frames</a></li> +<li><a href="SerialReplicationChecker.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li><a href="#field.summary">Field</a> | </li> +<li><a href="#constructor.summary">Constr</a> | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li><a href="#field.detail">Field</a> | </li> +<li><a href="#constructor.detail">Constr</a> | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.hadoop.hbase.replication.regionserver</div> +<h2 title="Class SerialReplicationChecker" class="title">Class SerialReplicationChecker</h2> +</div> +<div class="contentContainer"> +<ul class="inheritance"> +<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> +<li> +<ul class="inheritance"> +<li>org.apache.hadoop.hbase.replication.regionserver.SerialReplicationChecker</li> +</ul> +</li> +</ul> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<hr> +<br> +<pre>@InterfaceAudience.Private +class <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.109">SerialReplicationChecker</a> +extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre> +<div class="block"><p> + Helper class to determine whether we can push a given WAL entry without breaking the replication + order. The class is designed to per <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReader.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><code>ReplicationSourceWALReader</code></a>, so not thread safe. + </p> + <p> + We record all the open sequence number for a region in a special family in meta, which is called + 'barrier', so there will be a sequence of open sequence number (b1, b2, b3, ...). We call [bn, + bn+1) a range, and it is obvious that a region will always be on the same RS within a range. + <p> + When split and merge, we will also record the parent for the generated region(s) in the special + family in meta. And also, we will write an extra 'open sequence number' for the parent region(s), + which is the max sequence id of the region plus one. + </p> + </p> + <p> + For each peer, we record the last pushed sequence id for each region. It is managed by the + replication storage. + </p> + <p> + The algorithm works like this: + <ol> + <li>Locate the sequence id we want to push in the barriers</li> + <li>If it is before the first barrier, we are safe to push. This usually because we enable serial + replication for this table after we create the table and write data into the table.</li> + <li>In general, if the previous range is finished, then we are safe to push. The way to determine + whether a range is finish is straight-forward: check whether the last pushed sequence id is equal + to the end barrier of the range minus 1. There are several exceptions: + <ul> + <li>If it is in the first range, we need to check whether there are parent regions. If so, we + need to make sure that the data for parent regions have all been pushed.</li> + <li>If it is in the last range, we need to check the region state. If state is OPENING, then we + are not safe to push. This is because that, before we call reportRIT to master which update the + open sequence number into meta table, we will write a open region event marker to WAL first, and + its sequence id is greater than the newest open sequence number(which has not been updated to + meta table yet so we do not know). For this scenario, the WAL entry for this open region event + marker actually belongs to the range after the 'last' range, so we are not safe to push it. + Otherwise the last pushed sequence id will be updated to this value and then we think the + previous range has already been finished, but this is not true.</li> + <li>Notice that the above two exceptions are not conflicts, since the first range can also be the + last range if we only have one range.</li> + </ul> + </li> + </ol> + </p> + <p> + And for performance reason, we do not want to check meta for every WAL entry, so we introduce two + in memory maps. The idea is simple: + <ul> + <li>If a range can be pushed, then put its end barrier into the <code>canPushUnder</code> map.</li> + <li>Before accessing meta, first check the sequence id stored in the <code>canPushUnder</code> map. If + the sequence id of WAL entry is less the one stored in <code>canPushUnder</code> map, then we are safe + to push.</li> + </ul> + And for the last range, we do not have an end barrier, so we use the continuity of sequence id to + determine whether we can push. The rule is: + <ul> + <li>When an entry is able to push, then put its sequence id into the <code>pushed</code> map.</li> + <li>Check if the sequence id of WAL entry equals to the one stored in the <code>pushed</code> map plus + one. If so, we are safe to push, and also update the <code>pushed</code> map with the sequence id of + the WAL entry.</li> + </ul> + </p></div> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- =========== FIELD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="field.summary"> +<!-- --> +</a> +<h3>Field Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> +<caption><span>Fields</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Field and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private org.apache.hbase.thirdparty.com.google.common.cache.Cache<<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="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#canPushUnder">canPushUnder</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#conn">conn</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#peerId">peerId</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private org.apache.hbase.thirdparty.com.google.common.cache.LoadingCache<<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>,org.apache.commons.lang3.mutable.MutableLong></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#pushed">pushed</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static long</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#REPLICATION_SERIALLY_WAITING_DEFAULT">REPLICATION_SERIALLY_WAITING_DEFAULT</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#REPLICATION_SERIALLY_WAITING_KEY">REPLICATION_SERIALLY_WAITING_KEY</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#storage">storage</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private long</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#waitTimeMs">waitTimeMs</a></span></code> </td> +</tr> +</table> +</li> +</ul> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="constructor.summary"> +<!-- --> +</a> +<h3>Constructor Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> +<caption><span>Constructors</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colOne" scope="col">Constructor and Description</th> +</tr> +<tr class="altColor"> +<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#SerialReplicationChecker-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.replication.regionserver.ReplicationSource-">SerialReplicationChecker</a></span>(org.apache.hadoop.conf.Configuration conf, + <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a> source)</code> </td> +</tr> +</table> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#canPush-org.apache.hadoop.hbase.wal.WAL.Entry-byte:A-">canPush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + byte[] row)</code> </td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#canPush-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">canPush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> firstCellInEdit)</code> </td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#isLastRangeAndOpening-org.apache.hadoop.hbase.MetaTableAccessor.ReplicationBarrierResult-int-">isLastRangeAndOpening</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/MetaTableAccessor.ReplicationBarrierResult.html" title="class in org.apache.hadoop.hbase">MetaTableAccessor.ReplicationBarrierResult</a> barrierResult, + int index)</code> </td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#isParentFinished-byte:A-">isParentFinished</a></span>(byte[] regionName)</code> </td> +</tr> +<tr id="i4" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#isRangeFinished-long-java.lang.String-">isRangeFinished</a></span>(long endBarrier, + <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> encodedRegionName)</code> </td> +</tr> +<tr id="i5" class="rowColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#recordCanPush-java.lang.String-long-long:A-int-">recordCanPush</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> encodedNameAsString, + long seqId, + long[] barriers, + int index)</code> </td> +</tr> +<tr id="i6" class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#waitUntilCanPush-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-">waitUntilCanPush</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> firstCellInEdit)</code> </td> +</tr> +</table> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> +<!-- --> +</a> +<h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> +<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/ja va/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ FIELD DETAIL =========== --> +<ul class="blockList"> +<li class="blockList"><a name="field.detail"> +<!-- --> +</a> +<h3>Field Detail</h3> +<a name="REPLICATION_SERIALLY_WAITING_KEY"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>REPLICATION_SERIALLY_WAITING_KEY</h4> +<pre>public static final <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/replication/regionserver/SerialReplicationChecker.html#line.111">REPLICATION_SERIALLY_WAITING_KEY</a></pre> +<dl> +<dt><span class="seeLabel">See Also:</span></dt> +<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.replication.regionserver.SerialReplicationChecker.REPLICATION_SERIALLY_WAITING_KEY">Constant Field Values</a></dd> +</dl> +</li> +</ul> +<a name="REPLICATION_SERIALLY_WAITING_DEFAULT"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>REPLICATION_SERIALLY_WAITING_DEFAULT</h4> +<pre>public static final long <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.113">REPLICATION_SERIALLY_WAITING_DEFAULT</a></pre> +<dl> +<dt><span class="seeLabel">See Also:</span></dt> +<dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.replication.regionserver.SerialReplicationChecker.REPLICATION_SERIALLY_WAITING_DEFAULT">Constant Field Values</a></dd> +</dl> +</li> +</ul> +<a name="peerId"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>peerId</h4> +<pre>private final <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/replication/regionserver/SerialReplicationChecker.html#line.115">peerId</a></pre> +</li> +</ul> +<a name="storage"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>storage</h4> +<pre>private final <a href="../../../../../../org/apache/hadoop/hbase/replication/ReplicationQueueStorage.html" title="interface in org.apache.hadoop.hbase.replication">ReplicationQueueStorage</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.117">storage</a></pre> +</li> +</ul> +<a name="conn"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>conn</h4> +<pre>private final <a href="../../../../../../org/apache/hadoop/hbase/client/Connection.html" title="interface in org.apache.hadoop.hbase.client">Connection</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.119">conn</a></pre> +</li> +</ul> +<a name="waitTimeMs"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>waitTimeMs</h4> +<pre>private final long <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.121">waitTimeMs</a></pre> +</li> +</ul> +<a name="pushed"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>pushed</h4> +<pre>private final org.apache.hbase.thirdparty.com.google.common.cache.LoadingCache<<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>,org.apache.commons.lang3.mutable.MutableLong> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.123">pushed</a></pre> +</li> +</ul> +<a name="canPushUnder"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>canPushUnder</h4> +<pre>private final org.apache.hbase.thirdparty.com.google.common.cache.Cache<<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="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.133">canPushUnder</a></pre> +</li> +</ul> +</li> +</ul> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<ul class="blockList"> +<li class="blockList"><a name="constructor.detail"> +<!-- --> +</a> +<h3>Constructor Detail</h3> +<a name="SerialReplicationChecker-org.apache.hadoop.conf.Configuration-org.apache.hadoop.hbase.replication.regionserver.ReplicationSource-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>SerialReplicationChecker</h4> +<pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.136">SerialReplicationChecker</a>(org.apache.hadoop.conf.Configuration conf, + <a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.html" title="class in org.apache.hadoop.hbase.replication.regionserver">ReplicationSource</a> source)</pre> +</li> +</ul> +</li> +</ul> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="isRangeFinished-long-java.lang.String-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>isRangeFinished</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.144">isRangeFinished</a>(long endBarrier, + <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> encodedRegionName) + 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> +<dd><code><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></code></dd> +</dl> +</li> +</ul> +<a name="isParentFinished-byte:A-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>isParentFinished</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.157">isParentFinished</a>(byte[] regionName) + 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> +<dd><code><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></code></dd> +</dl> +</li> +</ul> +<a name="isLastRangeAndOpening-org.apache.hadoop.hbase.MetaTableAccessor.ReplicationBarrierResult-int-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>isLastRangeAndOpening</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.168">isLastRangeAndOpening</a>(<a href="../../../../../../org/apache/hadoop/hbase/MetaTableAccessor.ReplicationBarrierResult.html" title="class in org.apache.hadoop.hbase">MetaTableAccessor.ReplicationBarrierResult</a> barrierResult, + int index)</pre> +</li> +</ul> +<a name="recordCanPush-java.lang.String-long-long:A-int-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>recordCanPush</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.173">recordCanPush</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> encodedNameAsString, + long seqId, + long[] barriers, + int index)</pre> +</li> +</ul> +<a name="canPush-org.apache.hadoop.hbase.wal.WAL.Entry-byte:A-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>canPush</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.180">canPush</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + byte[] row) + 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> +<dd><code><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></code></dd> +</dl> +</li> +</ul> +<a name="canPush-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>canPush</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.226">canPush</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> firstCellInEdit) + 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> +<dd><code><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></code></dd> +</dl> +</li> +</ul> +<a name="waitUntilCanPush-org.apache.hadoop.hbase.wal.WAL.Entry-org.apache.hadoop.hbase.Cell-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>waitUntilCanPush</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html#line.248">waitUntilCanPush</a>(<a href="../../../../../../org/apache/hadoop/hbase/wal/WAL.Entry.html" title="class in org.apache.hadoop.hbase.wal">WAL.Entry</a> entry, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> firstCellInEdit) + 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>, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre> +<dl> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><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></code></dd> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/SerialReplicationChecker.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../../../index-all.html">Index</a></li> +<li><a href="../../../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" target="_top">Frames</a></li> +<li><a href="SerialReplicationChecker.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li><a href="#field.summary">Field</a> | </li> +<li><a href="#constructor.summary">Constr</a> | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li><a href="#field.detail">Field</a> | </li> +<li><a href="#constructor.detail">Constr</a> | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +<p class="legalCopy"><small>Copyright © 2007–2018 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> +</body> +</html> http://git-wip-us.apache.org/repos/asf/hbase-site/blob/6b94a2f2/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html index f5fbe5a..3829525 100644 --- a/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html +++ b/devapidocs/org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html @@ -49,8 +49,8 @@ var activeTableTab = "activeTableTab"; </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntrySinkFilter.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" target="_top">Frames</a></li> @@ -203,8 +203,8 @@ public interface <a href="../../../../../../src-html/org/apache/hadoop/hbase/rep </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/ReplicationThrottler.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> -<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntrySinkFilter.html" title="interface in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/SerialReplicationChecker.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/replication/regionserver/WALEntryBatch.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/replication/regionserver/SourceFSConfigurationProvider.html" target="_top">Frames</a></li>
