blob: cfb2050afd9b6ac3541197199a25be3e525e4084 [file] [log] [blame]
<!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>RegionProcedureStore (Apache HBase 3.0.0-alpha-2-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="RegionProcedureStore (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":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/RegionProcedureStore.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/procedure2/store/region/HFileProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/WALProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html" target="_top">Frames</a></li>
<li><a href="RegionProcedureStore.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</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.procedure2.store.region</div>
<h2 title="Class RegionProcedureStore" class="title">Class RegionProcedureStore</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><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html" title="class in org.apache.hadoop.hbase.procedure2.store">org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.procedure2.store.region.RegionProcedureStore</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
public class <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.79">RegionProcedureStore</a>
extends <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html" title="class in org.apache.hadoop.hbase.procedure2.store">ProcedureStoreBase</a></pre>
<div class="block">A procedure store which uses the master local store to store all the procedures.
<p/>
We use proc:d column to store the serialized protobuf format procedure, and when deleting we will
first fill the info:proc column with an empty byte array, and then actually delete them in the
<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#cleanup--"><code>cleanup()</code></a> method. This is because that we need to retain the max procedure id, so we can
not directly delete a procedure row as we do not know if it is the one with the max procedure id.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.hbase.procedure2.store.ProcedureStore">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.hadoop.hbase.procedure2.store.<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore</a></h3>
<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureIterator.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureIterator</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureLoader.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureLoader</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureStoreListener.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureStoreListener</a></code></li>
</ul>
</li>
</ul>
<!-- =========== 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">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#leaseRecovery">leaseRecovery</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#numThreads">numThreads</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#PROC_QUALIFIER">PROC_QUALIFIER</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) <a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#region">region</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#server">server</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#UNSUPPORTED_PROCEDURES">UNSUPPORTED_PROCEDURES</a></span></code>&nbsp;</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">&nbsp;</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/procedure2/store/region/RegionProcedureStore.html#RegionProcedureStore-org.apache.hadoop.hbase.Server-org.apache.hadoop.hbase.master.region.MasterRegion-org.apache.hadoop.hbase.procedure2.store.LeaseRecovery-">RegionProcedureStore</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
<a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegion</a>&nbsp;region,
<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a>&nbsp;leaseRecovery)</code>&nbsp;</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">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<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 void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#checkUnsupportedProcedure-java.util.Map-">checkUnsupportedProcedure</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;,<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/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&gt;&gt;&nbsp;procsByType)</code>
<div class="block">In HBASE-20811, we have introduced a new TRSP to assign/unassign/move regions, and it is
incompatible with the old AssignProcedure/UnassignProcedure/MoveRegionProcedure.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#cleanup--">cleanup</a></span>()</code>
<div class="block">Will be called by the framework to give the store a chance to do some clean up works.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#delete-long-">delete</a></span>(long&nbsp;procId)</code>
<div class="block">The specified procId was removed from the executor,
due to completion, abort or failure.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#delete-long:A-int-int-">delete</a></span>(long[]&nbsp;procIds,
int&nbsp;offset,
int&nbsp;count)</code>
<div class="block">The specified procIds were removed from the executor,
due to completion, abort or failure.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#delete-org.apache.hadoop.hbase.procedure2.Procedure-long:A-">delete</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;parentProc,
long[]&nbsp;subProcIds)</code>
<div class="block">The parent procedure completed.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#getNumThreads--">getNumThreads</a></span>()</code>&nbsp;</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/procedure2/store/region/RegionProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure:A-">insert</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;procs)</code>
<div class="block">Serialize a set of new procedures.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure-org.apache.hadoop.hbase.procedure2.Procedure:A-">insert</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;subProcs)</code>
<div class="block">When a procedure is submitted to the executor insert(proc, null) will be called.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#load-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureLoader-">load</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureLoader.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureLoader</a>&nbsp;loader)</code>
<div class="block">Load the Procedures in the store.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#recoverLease--">recoverLease</a></span>()</code>
<div class="block">Acquire the lease for the procedure store.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#runWithoutRpcCall-java.lang.Runnable-">runWithoutRpcCall</a></span>(<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>&nbsp;runnable)</code>
<div class="block">Insert procedure may be called by master's rpc call.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#serializeDelete-long-java.util.List-java.util.List-">serializeDelete</a></span>(long&nbsp;procId,
<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/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations,
<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;byte[]&gt;&nbsp;rowsToLock)</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#serializePut-org.apache.hadoop.hbase.procedure2.Procedure-java.util.List-java.util.List-">serializePut</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
<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/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations,
<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;byte[]&gt;&nbsp;rowsToLock)</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#setRunningProcedureCount-int-">setRunningProcedureCount</a></span>(int&nbsp;count)</code>
<div class="block">Set the number of procedure running.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#start-int-">start</a></span>(int&nbsp;numThreads)</code>
<div class="block">Start/Open the procedure store</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#stop-boolean-">stop</a></span>(boolean&nbsp;abort)</code>
<div class="block">Stop/Close the procedure store</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#tryMigrate-org.apache.hadoop.fs.FileSystem-">tryMigrate</a></span>(org.apache.hadoop.fs.FileSystem&nbsp;fs)</code>&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#update-org.apache.hadoop.hbase.procedure2.Procedure-">update</a></span>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</code>
<div class="block">The specified procedure was executed,
and the new state should be written to the store.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.procedure2.store.ProcedureStoreBase">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.procedure2.store.<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html" title="class in org.apache.hadoop.hbase.procedure2.store">ProcedureStoreBase</a></h3>
<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#isRunning--">isRunning</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#registerListener-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureStoreListener-">registerListener</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#sendAbortProcessSignal--">sendAbortProcessSignal</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#sendForceUpdateSignal-long:A-">sendForceUpdateSignal</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#sendPostSyncSignal--">sendPostSyncSignal</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#setRunning-boolean-">setRunning</a>, <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStoreBase.html#unregisterListener-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureStoreListener-">unregisterListener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;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/java/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="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>private static final&nbsp;org.slf4j.Logger <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.81">LOG</a></pre>
</li>
</ul>
<a name="PROC_QUALIFIER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROC_QUALIFIER</h4>
<pre>static final&nbsp;byte[] <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.83">PROC_QUALIFIER</a></pre>
</li>
</ul>
<a name="server">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>server</h4>
<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.85">server</a></pre>
</li>
</ul>
<a name="leaseRecovery">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>leaseRecovery</h4>
<pre>private final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.87">leaseRecovery</a></pre>
</li>
</ul>
<a name="region">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>region</h4>
<pre>final&nbsp;<a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegion</a> <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.89">region</a></pre>
</li>
</ul>
<a name="numThreads">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>numThreads</h4>
<pre>private&nbsp;int <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.91">numThreads</a></pre>
</li>
</ul>
<a name="UNSUPPORTED_PROCEDURES">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>UNSUPPORTED_PROCEDURES</h4>
<pre>private static final&nbsp;org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&gt; <a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.128">UNSUPPORTED_PROCEDURES</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="RegionProcedureStore-org.apache.hadoop.hbase.Server-org.apache.hadoop.hbase.master.region.MasterRegion-org.apache.hadoop.hbase.procedure2.store.LeaseRecovery-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RegionProcedureStore</h4>
<pre>public&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.93">RegionProcedureStore</a>(<a href="../../../../../../../org/apache/hadoop/hbase/Server.html" title="interface in org.apache.hadoop.hbase">Server</a>&nbsp;server,
<a href="../../../../../../../org/apache/hadoop/hbase/master/region/MasterRegion.html" title="class in org.apache.hadoop.hbase.master.region">MasterRegion</a>&nbsp;region,
<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/LeaseRecovery.html" title="interface in org.apache.hadoop.hbase.procedure2.store">LeaseRecovery</a>&nbsp;leaseRecovery)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="start-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.100">start</a>(int&nbsp;numThreads)
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/procedure2/store/ProcedureStore.html#start-int-">ProcedureStore</a></code></span></div>
<div class="block">Start/Open the procedure store</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>numThreads</code> - number of threads to be used by the procedure store</dd>
<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="stop-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.109">stop</a>(boolean&nbsp;abort)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#stop-boolean-">ProcedureStore</a></code></span></div>
<div class="block">Stop/Close the procedure store</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>abort</code> - true if the stop is an abort</dd>
</dl>
</li>
</ul>
<a name="getNumThreads--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumThreads</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.117">getNumThreads</a>()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads/slots passed to start()</dd>
</dl>
</li>
</ul>
<a name="setRunningProcedureCount-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRunningProcedureCount</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.122">setRunningProcedureCount</a>(int&nbsp;count)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#setRunningProcedureCount-int-">ProcedureStore</a></code></span></div>
<div class="block">Set the number of procedure running.
This can be used, for example, by the store to know how long to wait before a sync.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>how many procedures are running (may not be same as <code>count</code>).</dd>
</dl>
</li>
</ul>
<a name="checkUnsupportedProcedure-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkUnsupportedProcedure</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.138">checkUnsupportedProcedure</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;,<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/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&gt;&gt;&nbsp;procsByType)
throws <a href="../../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></pre>
<div class="block">In HBASE-20811, we have introduced a new TRSP to assign/unassign/move regions, and it is
incompatible with the old AssignProcedure/UnassignProcedure/MoveRegionProcedure. So we need to
make sure that there are none these procedures when upgrading. If there are, the master will
quit, you need to go back to the old version to finish these procedures first before upgrading.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../../org/apache/hadoop/hbase/HBaseIOException.html" title="class in org.apache.hadoop.hbase">HBaseIOException</a></code></dd>
</dl>
</li>
</ul>
<a name="tryMigrate-org.apache.hadoop.fs.FileSystem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tryMigrate</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.168">tryMigrate</a>(org.apache.hadoop.fs.FileSystem&nbsp;fs)
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="recoverLease--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recoverLease</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.252">recoverLease</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/procedure2/store/ProcedureStore.html#recoverLease--">ProcedureStore</a></code></span></div>
<div class="block">Acquire the lease for the procedure store.</div>
<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="load-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureLoader-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>load</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.259">load</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.ProcedureLoader.html" title="interface in org.apache.hadoop.hbase.procedure2.store">ProcedureStore.ProcedureLoader</a>&nbsp;loader)
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/procedure2/store/ProcedureStore.html#load-org.apache.hadoop.hbase.procedure2.store.ProcedureStore.ProcedureLoader-">ProcedureStore</a></code></span></div>
<div class="block">Load the Procedures in the store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>loader</code> - the ProcedureLoader that will handle the store-load events</dd>
<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="serializePut-org.apache.hadoop.hbase.procedure2.Procedure-java.util.List-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serializePut</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.289">serializePut</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
<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/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations,
<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;byte[]&gt;&nbsp;rowsToLock)
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="serializeDelete-long-java.util.List-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serializeDelete</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.299">serializeDelete</a>(long&nbsp;procId,
<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/client/Mutation.html" title="class in org.apache.hadoop.hbase.client">Mutation</a>&gt;&nbsp;mutations,
<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;byte[]&gt;&nbsp;rowsToLock)</pre>
</li>
</ul>
<a name="runWithoutRpcCall-java.lang.Runnable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>runWithoutRpcCall</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.310">runWithoutRpcCall</a>(<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>&nbsp;runnable)</pre>
<div class="block">Insert procedure may be called by master's rpc call. There are some check about the rpc call
when mutate region. Here unset the current rpc call and set it back in finally block. See
HBASE-23895 for more details.</div>
</li>
</ul>
<a name="insert-org.apache.hadoop.hbase.procedure2.Procedure-org.apache.hadoop.hbase.procedure2.Procedure:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insert</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.320">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc,
<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;subProcs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure-org.apache.hadoop.hbase.procedure2.Procedure:A-">ProcedureStore</a></code></span></div>
<div class="block">When a procedure is submitted to the executor insert(proc, null) will be called.
'proc' has a 'RUNNABLE' state and the initial information required to start up.
When a procedure is executed and it returns children insert(proc, subprocs) will be called.
'proc' has a 'WAITING' state and an update state.
'subprocs' are the children in 'RUNNABLE' state with the initial information.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>proc</code> - the procedure to serialize and write to the store.</dd>
<dd><code>subProcs</code> - the newly created child of the proc.</dd>
</dl>
</li>
</ul>
<a name="insert-org.apache.hadoop.hbase.procedure2.Procedure:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insert</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.344">insert</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;[]&nbsp;procs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#insert-org.apache.hadoop.hbase.procedure2.Procedure:A-">ProcedureStore</a></code></span></div>
<div class="block">Serialize a set of new procedures.
These procedures are freshly submitted to the executor and each procedure
has a 'RUNNABLE' state and the initial information required to start up.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>procs</code> - the procedures to serialize and write to the store.</dd>
</dl>
</li>
</ul>
<a name="update-org.apache.hadoop.hbase.procedure2.Procedure-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>update</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.361">update</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;proc)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#update-org.apache.hadoop.hbase.procedure2.Procedure-">ProcedureStore</a></code></span></div>
<div class="block">The specified procedure was executed,
and the new state should be written to the store.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>proc</code> - the procedure to serialize and write to the store.</dd>
</dl>
</li>
</ul>
<a name="delete-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.375">delete</a>(long&nbsp;procId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#delete-long-">ProcedureStore</a></code></span></div>
<div class="block">The specified procId was removed from the executor,
due to completion, abort or failure.
The store implementor should remove all the information about the specified procId.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>procId</code> - the ID of the procedure to remove.</dd>
</dl>
</li>
</ul>
<a name="delete-org.apache.hadoop.hbase.procedure2.Procedure-long:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.386">delete</a>(<a href="../../../../../../../org/apache/hadoop/hbase/procedure2/Procedure.html" title="class in org.apache.hadoop.hbase.procedure2">Procedure</a>&lt;?&gt;&nbsp;parentProc,
long[]&nbsp;subProcIds)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#delete-org.apache.hadoop.hbase.procedure2.Procedure-long:A-">ProcedureStore</a></code></span></div>
<div class="block">The parent procedure completed.
Update the state and mark all the child deleted.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parentProc</code> - the parent procedure to serialize and write to the store.</dd>
<dd><code>subProcIds</code> - the IDs of the sub-procedure to remove.</dd>
</dl>
</li>
</ul>
<a name="delete-long:A-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.403">delete</a>(long[]&nbsp;procIds,
int&nbsp;offset,
int&nbsp;count)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#delete-long:A-int-int-">ProcedureStore</a></code></span></div>
<div class="block">The specified procIds were removed from the executor,
due to completion, abort or failure.
The store implementor should remove all the information about the specified procIds.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>procIds</code> - the IDs of the procedures to remove.</dd>
<dd><code>offset</code> - the array offset from where to start to delete</dd>
<dd><code>count</code> - the number of IDs to delete</dd>
</dl>
</li>
</ul>
<a name="cleanup--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>cleanup</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../../../src-html/org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html#line.426">cleanup</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#cleanup--">ProcedureStore</a></code></span></div>
<div class="block">Will be called by the framework to give the store a chance to do some clean up works.
<p/>
Notice that this is for periodical clean up work, not for the clean up after close, if you want
to close the store just call the <a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/ProcedureStore.html#stop-boolean-"><code>ProcedureStore.stop(boolean)</code></a> method above.</div>
</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/RegionProcedureStore.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/procedure2/store/region/HFileProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/hbase/procedure2/store/region/WALProcedurePrettyPrinter.html" title="class in org.apache.hadoop.hbase.procedure2.store.region"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/hbase/procedure2/store/region/RegionProcedureStore.html" target="_top">Frames</a></li>
<li><a href="RegionProcedureStore.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>