blob: 0b8d051f0c9e5fff185acd3fbfafbb8846641f35 [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 (1.8.0_292) on Tue Jun 15 06:12:11 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RMStateStore (Apache Hadoop YARN ResourceManager 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<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="RMStateStore (Apache Hadoop YARN ResourceManager 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":6,"i2":6,"i3":6,"i4":10,"i5":6,"i6":10,"i7":10,"i8":10,"i9":6,"i10":10,"i11":6,"i12":6,"i13":10,"i14":10,"i15":6,"i16":10,"i17":10,"i18":6,"i19":6,"i20":10,"i21":6,"i22":10,"i23":6,"i24":10,"i25":6,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":6,"i32":6,"i33":6,"i34":10,"i35":10,"i36":10,"i37":10,"i38":6,"i39":10,"i40":6,"i41":6,"i42":10,"i43":6,"i44":10,"i45":6,"i46":6,"i47":10,"i48":6,"i49":10,"i50":10,"i51":6,"i52":10,"i53":10,"i54":10,"i55":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/RMStateStore.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/yarn/server/resourcemanager/recovery/Recoverable.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.recovery"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.ProxyCAState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html" target="_top">Frames</a></li>
<li><a href="RMStateStore.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</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.yarn.server.resourcemanager.recovery</div>
<h2 title="Class RMStateStore" class="title">Class RMStateStore</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.service.AbstractService</li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.hadoop.service.Service</dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/FileSystemRMStateStore.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">FileSystemRMStateStore</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/LeveldbRMStateStore.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">LeveldbRMStateStore</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/MemoryRMStateStore.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">MemoryRMStateStore</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/NullRMStateStore.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">NullRMStateStore</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/ZKRMStateStore.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">ZKRMStateStore</a></dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
@InterfaceStability.Unstable
public abstract class <span class="typeNameLabel">RMStateStore</span>
extends org.apache.hadoop.service.AbstractService</pre>
</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>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.ProxyCAState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.ProxyCAState</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMDTSecretManagerState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMDTSecretManagerState</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMState</a></span></code>
<div class="block">State of the ResourceManager</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMStateStoreState.html" title="enum in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMStateStoreState</a></span></code>
<div class="block">The enum defines state of RMStateStore.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.service.Service">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.hadoop.service.Service</h3>
<code>org.apache.hadoop.service.Service.STATE</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>static org.apache.hadoop.io.Text</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#AM_CLIENT_TOKEN_MASTER_KEY_NAME">AM_CLIENT_TOKEN_MASTER_KEY_NAME</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static org.apache.hadoop.io.Text</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#AM_RM_TOKEN_SERVICE">AM_RM_TOKEN_SERVICE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#AMRMTOKEN_SECRET_MANAGER_ROOT">AMRMTOKEN_SECRET_MANAGER_ROOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#baseEpoch">baseEpoch</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#DELEGATION_KEY_PREFIX">DELEGATION_KEY_PREFIX</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#DELEGATION_TOKEN_PREFIX">DELEGATION_TOKEN_PREFIX</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX">DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#EPOCH_NODE">EPOCH_NODE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#LOG">LOG</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#PROXY_CA_CERT_NODE">PROXY_CA_CERT_NODE</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#PROXY_CA_PRIVATE_KEY_NODE">PROXY_CA_PRIVATE_KEY_NODE</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#PROXY_CA_ROOT">PROXY_CA_ROOT</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#RESERVATION_SYSTEM_ROOT">RESERVATION_SYSTEM_ROOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.html" title="class in org.apache.hadoop.yarn.server.resourcemanager">ResourceManager</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#resourceManager">resourceManager</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<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/yarn/server/resourcemanager/recovery/RMStateStore.html#RM_APP_ROOT">RM_APP_ROOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME">RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#RM_DT_SECRET_MANAGER_ROOT">RM_DT_SECRET_MANAGER_ROOT</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.yarn.event.EventHandler</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#rmStateStoreEventHandler">rmStateStoreEventHandler</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected 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/yarn/server/resourcemanager/recovery/RMStateStore.html#VERSION_NODE">VERSION_NODE</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/yarn/server/resourcemanager/recovery/RMStateStore.html#RMStateStore--">RMStateStore</a></span>()</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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#checkVersion--">checkVersion</a></span>()</code>
<div class="block">1) Versioning scheme: major.minor.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#closeInternal--">closeInternal</a></span>()</code>
<div class="block">Derived classes close themselves using this method.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#deleteStore--">deleteStore</a></span>()</code>
<div class="block">Derived classes must implement this method to delete the state store</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#getAndIncrementEpoch--">getAndIncrementEpoch</a></span>()</code>
<div class="block">Get the current epoch of RM and increment the value.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>org.apache.hadoop.security.Credentials</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#getCredentialsFromAppAttempt-org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttempt-">getCredentialsFromAppAttempt</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttempt.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt">RMAppAttempt</a>&nbsp;appAttempt)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected abstract org.apache.hadoop.yarn.server.records.Version</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#getCurrentVersion--">getCurrentVersion</a></span>()</code>
<div class="block">Get the current version of the underlying state store.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.yarn.event.EventHandler</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#getRMStateStoreEventHandler--">getRMStateStoreEventHandler</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMStateStoreState.html" title="enum in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMStateStoreState</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#getRMStateStoreState--">getRMStateStoreState</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#handleStoreEvent-org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStoreEvent-">handleStoreEvent</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreEvent.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStoreEvent</a>&nbsp;event)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#initInternal-org.apache.hadoop.conf.Configuration-">initInternal</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
<div class="block">Derived classes initialize themselves using this method.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#isFencedState--">isFencedState</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMState</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#loadState--">loadState</a></span>()</code>
<div class="block">Blocking API
The derived class must recover state from the store and return a new
RMState object populated with that state
This must not be called on the dispatcher thread</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected abstract org.apache.hadoop.yarn.server.records.Version</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#loadVersion--">loadVersion</a></span>()</code>
<div class="block">Derived class use this method to load the version information from state
store.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#nextEpoch-long-">nextEpoch</a></span>(long&nbsp;epoch)</code>
<div class="block">Compute the next epoch value by incrementing by one.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#notifyStoreOperationFailed-java.lang.Exception-">notifyStoreOperationFailed</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a>&nbsp;failureCause)</code>
<div class="block">This method is called to notify the ResourceManager that the store
operation has failed.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeApplication-org.apache.hadoop.yarn.api.records.ApplicationId-">removeApplication</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;removeAppId)</code>
<div class="block">Derived classes must implement this method to remove application from the
state store</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeApplication-org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp-">removeApplication</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMApp.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp">RMApp</a>&nbsp;app)</code>
<div class="block">Non-blocking API
ResourceManager services call this to remove an application from the state
store
This does not block the dispatcher threads
There is no notification of completion for this operation.</div>
</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/yarn/server/resourcemanager/recovery/RMStateStore.html#removeApplicationAttempt-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-">removeApplicationAttempt</a></span>(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;applicationAttemptId)</code>
<div class="block">Non-blocking API
ResourceManager services call this to remove an attempt from the state
store
This does not block the dispatcher threads
There is no notification of completion for this operation.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeApplicationAttemptInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-">removeApplicationAttemptInternal</a></span>(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId)</code>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of specified
attempt.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeApplicationStateInternal-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">removeApplicationStateInternal</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState)</code>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of an
application and its attempts</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeReservation-java.lang.String-java.lang.String-">removeReservation</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</code>&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeReservationState-java.lang.String-java.lang.String-">removeReservationState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</code>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of
a reservation allocation.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-">removeRMDelegationToken</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier)</code>
<div class="block">RMDTSecretManager call this to remove the state of a delegation token</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-">removeRMDelegationTokenState</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier)</code>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of RMDelegationToken</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeRMDTMasterKey-org.apache.hadoop.security.token.delegation.DelegationKey-">removeRMDTMasterKey</a></span>(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</code>
<div class="block">RMDTSecretManager call this to remove the state of a master key</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#removeRMDTMasterKeyState-org.apache.hadoop.security.token.delegation.DelegationKey-">removeRMDTMasterKeyState</a></span>(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</code>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of
DelegationToken Master Key</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#serviceInit-org.apache.hadoop.conf.Configuration-">serviceInit</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#serviceStart--">serviceStart</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#serviceStop--">serviceStop</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#setResourceManager-org.apache.hadoop.yarn.server.resourcemanager.ResourceManager-">setResourceManager</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.html" title="class in org.apache.hadoop.yarn.server.resourcemanager">ResourceManager</a>&nbsp;rm)</code>&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#setRMDispatcher-org.apache.hadoop.yarn.event.Dispatcher-">setRMDispatcher</a></span>(org.apache.hadoop.yarn.event.Dispatcher&nbsp;dispatcher)</code>
<div class="block">Dispatcher used to send state operation completion events to
ResourceManager services</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#startInternal--">startInternal</a></span>()</code>
<div class="block">Derived classes start themselves using this method.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeApplicationAttemptStateInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">storeApplicationAttemptStateInternal</a></span>(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptStateData)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the state of an
application attempt</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeApplicationStateInternal-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">storeApplicationStateInternal</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appStateData)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the state of an
application.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeNewApplication-org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp-">storeNewApplication</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMApp.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp">RMApp</a>&nbsp;app)</code>
<div class="block">Non-Blocking API
ResourceManager services use this to store the application's state
This does not block the dispatcher threads
RMAppStoredEvent will be sent on completion to notify the RMApp</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeNewApplicationAttempt-org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttempt-">storeNewApplicationAttempt</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttempt.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt">RMAppAttempt</a>&nbsp;appAttempt)</code>&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeNewReservation-org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto-java.lang.String-java.lang.String-">storeNewReservation</a></span>(org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto&nbsp;reservationAllocation,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</code>
<div class="block">Blocking Apis to maintain reservation state.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeOrUpdateAMRMTokenSecretManager-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.AMRMTokenSecretManagerState-boolean-">storeOrUpdateAMRMTokenSecretManager</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/AMRMTokenSecretManagerState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">AMRMTokenSecretManagerState</a>&nbsp;amrmTokenSecretManagerState,
boolean&nbsp;isUpdate)</code>
<div class="block">Store or Update state of AMRMToken Master Key</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeOrUpdateAMRMTokenSecretManagerState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.AMRMTokenSecretManagerState-boolean-">storeOrUpdateAMRMTokenSecretManagerState</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/AMRMTokenSecretManagerState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">AMRMTokenSecretManagerState</a>&nbsp;amrmTokenSecretManagerState,
boolean&nbsp;isUpdate)</code>
<div class="block">Blocking API Derived classes must implement this method to store or update
the state of AMRMToken Master Key</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeProxyCACert-java.security.cert.X509Certificate-java.security.PrivateKey-">storeProxyCACert</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/security/cert/X509Certificate.html?is-external=true" title="class or interface in java.security.cert">X509Certificate</a>&nbsp;caCert,
<a href="https://docs.oracle.com/javase/8/docs/api/java/security/PrivateKey.html?is-external=true" title="class or interface in java.security">PrivateKey</a>&nbsp;caPrivateKey)</code>
<div class="block">ProxyCAManager calls this to store the CA Certificate and Private Key.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeProxyCACertState-java.security.cert.X509Certificate-java.security.PrivateKey-">storeProxyCACertState</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/security/cert/X509Certificate.html?is-external=true" title="class or interface in java.security.cert">X509Certificate</a>&nbsp;caCert,
<a href="https://docs.oracle.com/javase/8/docs/api/java/security/PrivateKey.html?is-external=true" title="class or interface in java.security">PrivateKey</a>&nbsp;caPrivateKey)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the CA Certificate
and Private Key</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeReservationState-org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto-java.lang.String-java.lang.String-">storeReservationState</a></span>(org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto&nbsp;reservationAllocation,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
a reservation allocation.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">storeRMDelegationToken</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</code>
<div class="block">RMDTSecretManager call this to store the state of a delegation token
and sequence number</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">storeRMDelegationTokenState</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
RMDelegationToken and sequence number</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeRMDTMasterKey-org.apache.hadoop.security.token.delegation.DelegationKey-">storeRMDTMasterKey</a></span>(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</code>
<div class="block">RMDTSecretManager call this to store the state of a master key</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeRMDTMasterKeyState-org.apache.hadoop.security.token.delegation.DelegationKey-">storeRMDTMasterKeyState</a></span>(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</code>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
DelegationToken Master Key</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#storeVersion--">storeVersion</a></span>()</code>
<div class="block">Derived class use this method to store the version information.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationAttemptState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">updateApplicationAttemptState</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptState)</code>&nbsp;</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationAttemptStateInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">updateApplicationAttemptStateInternal</a></span>(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptStateData)</code>&nbsp;</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">updateApplicationState</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState)</code>&nbsp;</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-boolean-">updateApplicationState</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState,
boolean&nbsp;notifyApp)</code>&nbsp;</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationStateInternal-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">updateApplicationStateInternal</a></span>(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appStateData)</code>&nbsp;</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateApplicationStateSynchronously-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-boolean-org.apache.hadoop.thirdparty.com.google.common.util.concurrent.SettableFuture-">updateApplicationStateSynchronously</a></span>(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState,
boolean&nbsp;notifyApp,
org.apache.hadoop.thirdparty.com.google.common.util.concurrent.SettableFuture&lt;<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>&gt;&nbsp;resultFuture)</code>&nbsp;</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateFencedState--">updateFencedState</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">updateRMDelegationToken</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</code>
<div class="block">RMDTSecretManager call this to update the state of a delegation token
and sequence number</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html#updateRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">updateRMDelegationTokenState</a></span>(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</code>
<div class="block">Blocking API
Derived classes must implement this method to update the state of
RMDelegationToken and sequence number</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.service.AbstractService">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.service.AbstractService</h3>
<code>close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop</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#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="RM_APP_ROOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RM_APP_ROOT</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> RM_APP_ROOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.RM_APP_ROOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="RM_DT_SECRET_MANAGER_ROOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RM_DT_SECRET_MANAGER_ROOT</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> RM_DT_SECRET_MANAGER_ROOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.RM_DT_SECRET_MANAGER_ROOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.RM_DELEGATION_TOKENS_ROOT_ZNODE_NAME">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DELEGATION_KEY_PREFIX">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DELEGATION_KEY_PREFIX</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DELEGATION_KEY_PREFIX</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.DELEGATION_KEY_PREFIX">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DELEGATION_TOKEN_PREFIX">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DELEGATION_TOKEN_PREFIX</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DELEGATION_TOKEN_PREFIX</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.DELEGATION_TOKEN_PREFIX">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AMRMTOKEN_SECRET_MANAGER_ROOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AMRMTOKEN_SECRET_MANAGER_ROOT</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> AMRMTOKEN_SECRET_MANAGER_ROOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.AMRMTOKEN_SECRET_MANAGER_ROOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="RESERVATION_SYSTEM_ROOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RESERVATION_SYSTEM_ROOT</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> RESERVATION_SYSTEM_ROOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.RESERVATION_SYSTEM_ROOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PROXY_CA_ROOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROXY_CA_ROOT</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROXY_CA_ROOT</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.PROXY_CA_ROOT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PROXY_CA_CERT_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROXY_CA_CERT_NODE</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROXY_CA_CERT_NODE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.PROXY_CA_CERT_NODE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PROXY_CA_PRIVATE_KEY_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROXY_CA_PRIVATE_KEY_NODE</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROXY_CA_PRIVATE_KEY_NODE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.PROXY_CA_PRIVATE_KEY_NODE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="VERSION_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>VERSION_NODE</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> VERSION_NODE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.VERSION_NODE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="EPOCH_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EPOCH_NODE</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> EPOCH_NODE</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../constant-values.html#org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.EPOCH_NODE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="baseEpoch">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>baseEpoch</h4>
<pre>protected&nbsp;long baseEpoch</pre>
</li>
</ul>
<a name="resourceManager">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resourceManager</h4>
<pre>protected&nbsp;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.html" title="class in org.apache.hadoop.yarn.server.resourcemanager">ResourceManager</a> resourceManager</pre>
</li>
</ul>
<a name="LOG">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOG</h4>
<pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
</li>
</ul>
<a name="rmStateStoreEventHandler">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rmStateStoreEventHandler</h4>
<pre>protected&nbsp;org.apache.hadoop.yarn.event.EventHandler rmStateStoreEventHandler</pre>
</li>
</ul>
<a name="AM_RM_TOKEN_SERVICE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AM_RM_TOKEN_SERVICE</h4>
<pre>public static final&nbsp;org.apache.hadoop.io.Text AM_RM_TOKEN_SERVICE</pre>
</li>
</ul>
<a name="AM_CLIENT_TOKEN_MASTER_KEY_NAME">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AM_CLIENT_TOKEN_MASTER_KEY_NAME</h4>
<pre>public static final&nbsp;org.apache.hadoop.io.Text AM_CLIENT_TOKEN_MASTER_KEY_NAME</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="RMStateStore--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RMStateStore</h4>
<pre>public&nbsp;RMStateStore()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setRMDispatcher-org.apache.hadoop.yarn.event.Dispatcher-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRMDispatcher</h4>
<pre>public&nbsp;void&nbsp;setRMDispatcher(org.apache.hadoop.yarn.event.Dispatcher&nbsp;dispatcher)</pre>
<div class="block">Dispatcher used to send state operation completion events to
ResourceManager services</div>
</li>
</ul>
<a name="serviceInit-org.apache.hadoop.conf.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serviceInit</h4>
<pre>protected&nbsp;void&nbsp;serviceInit(org.apache.hadoop.conf.Configuration&nbsp;conf)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>serviceInit</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.service.AbstractService</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="serviceStart--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serviceStart</h4>
<pre>protected&nbsp;void&nbsp;serviceStart()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>serviceStart</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.service.AbstractService</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="initInternal-org.apache.hadoop.conf.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;initInternal(org.apache.hadoop.conf.Configuration&nbsp;conf)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived classes initialize themselves using this method.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="startInternal--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;startInternal()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived classes start themselves using this method.
The base class is started and the event dispatcher is ready to use at
this point</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="serviceStop--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serviceStop</h4>
<pre>protected&nbsp;void&nbsp;serviceStop()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>serviceStop</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.service.AbstractService</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="closeInternal--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;closeInternal()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived classes close themselves using this method.
The base class will be closed and the event dispatcher will be shutdown
after this</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="checkVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkVersion</h4>
<pre>public&nbsp;void&nbsp;checkVersion()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
2) Any incompatible change of state-store is a major upgrade, and any
compatible change of state-store is a minor upgrade.
3) If theres's no version, treat it as CURRENT_VERSION_INFO.
4) Within a minor upgrade, say 1.1 to 1.2:
overwrite the version info and proceed as normal.
5) Within a major upgrade, say 1.2 to 2.0:
throw exception and indicate user to use a separate upgrade tool to
upgrade RM state.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="loadVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadVersion</h4>
<pre>protected abstract&nbsp;org.apache.hadoop.yarn.server.records.Version&nbsp;loadVersion()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived class use this method to load the version information from state
store.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeVersion</h4>
<pre>protected abstract&nbsp;void&nbsp;storeVersion()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived class use this method to store the version information.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentVersion--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentVersion</h4>
<pre>protected abstract&nbsp;org.apache.hadoop.yarn.server.records.Version&nbsp;getCurrentVersion()</pre>
<div class="block">Get the current version of the underlying state store.</div>
</li>
</ul>
<a name="getAndIncrementEpoch--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndIncrementEpoch</h4>
<pre>public abstract&nbsp;long&nbsp;getAndIncrementEpoch()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Get the current epoch of RM and increment the value.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="nextEpoch-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextEpoch</h4>
<pre>protected&nbsp;long&nbsp;nextEpoch(long&nbsp;epoch)</pre>
<div class="block">Compute the next epoch value by incrementing by one.
Wraps around if the epoch range is exceeded so that
when federation is enabled epoch collisions can be avoided.</div>
</li>
</ul>
<a name="loadState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadState</h4>
<pre>public abstract&nbsp;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMState</a>&nbsp;loadState()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
The derived class must recover state from the store and return a new
RMState object populated with that state
This must not be called on the dispatcher thread</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeNewApplication-org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeNewApplication</h4>
<pre>public&nbsp;void&nbsp;storeNewApplication(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMApp.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp">RMApp</a>&nbsp;app)</pre>
<div class="block">Non-Blocking API
ResourceManager services use this to store the application's state
This does not block the dispatcher threads
RMAppStoredEvent will be sent on completion to notify the RMApp</div>
</li>
</ul>
<a name="updateApplicationState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationState</h4>
<pre>public&nbsp;void&nbsp;updateApplicationState(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState)</pre>
</li>
</ul>
<a name="updateApplicationState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationState</h4>
<pre>public&nbsp;void&nbsp;updateApplicationState(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState,
boolean&nbsp;notifyApp)</pre>
</li>
</ul>
<a name="updateApplicationStateSynchronously-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-boolean-org.apache.hadoop.thirdparty.com.google.common.util.concurrent.SettableFuture-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationStateSynchronously</h4>
<pre>public&nbsp;void&nbsp;updateApplicationStateSynchronously(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState,
boolean&nbsp;notifyApp,
org.apache.hadoop.thirdparty.com.google.common.util.concurrent.SettableFuture&lt;<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>&gt;&nbsp;resultFuture)</pre>
</li>
</ul>
<a name="updateFencedState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateFencedState</h4>
<pre>public&nbsp;void&nbsp;updateFencedState()</pre>
</li>
</ul>
<a name="storeApplicationStateInternal-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeApplicationStateInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;storeApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appStateData)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the state of an
application.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="updateApplicationStateInternal-org.apache.hadoop.yarn.api.records.ApplicationId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationStateInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;updateApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;appId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appStateData)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeNewApplicationAttempt-org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttempt-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeNewApplicationAttempt</h4>
<pre>public&nbsp;void&nbsp;storeNewApplicationAttempt(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttempt.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt">RMAppAttempt</a>&nbsp;appAttempt)</pre>
</li>
</ul>
<a name="updateApplicationAttemptState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationAttemptState</h4>
<pre>public&nbsp;void&nbsp;updateApplicationAttemptState(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptState)</pre>
</li>
</ul>
<a name="storeApplicationAttemptStateInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeApplicationAttemptStateInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;storeApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptStateData)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the state of an
application attempt</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="updateApplicationAttemptStateInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationAttemptStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateApplicationAttemptStateInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;updateApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationAttemptStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationAttemptStateData</a>&nbsp;attemptStateData)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeRMDelegationToken</h4>
<pre>public&nbsp;void&nbsp;storeRMDelegationToken(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</pre>
<div class="block">RMDTSecretManager call this to store the state of a delegation token
and sequence number</div>
</li>
</ul>
<a name="storeRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeRMDelegationTokenState</h4>
<pre>protected abstract&nbsp;void&nbsp;storeRMDelegationTokenState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
RMDelegationToken and sequence number</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeRMDelegationToken</h4>
<pre>public&nbsp;void&nbsp;removeRMDelegationToken(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier)</pre>
<div class="block">RMDTSecretManager call this to remove the state of a delegation token</div>
</li>
</ul>
<a name="removeRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeRMDelegationTokenState</h4>
<pre>protected abstract&nbsp;void&nbsp;removeRMDelegationTokenState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of RMDelegationToken</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="updateRMDelegationToken-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateRMDelegationToken</h4>
<pre>public&nbsp;void&nbsp;updateRMDelegationToken(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)</pre>
<div class="block">RMDTSecretManager call this to update the state of a delegation token
and sequence number</div>
</li>
</ul>
<a name="updateRMDelegationTokenState-org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier-java.lang.Long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateRMDelegationTokenState</h4>
<pre>protected abstract&nbsp;void&nbsp;updateRMDelegationTokenState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier&nbsp;rmDTIdentifier,
<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>&nbsp;renewDate)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to update the state of
RMDelegationToken and sequence number</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeRMDTMasterKey-org.apache.hadoop.security.token.delegation.DelegationKey-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeRMDTMasterKey</h4>
<pre>public&nbsp;void&nbsp;storeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</pre>
<div class="block">RMDTSecretManager call this to store the state of a master key</div>
</li>
</ul>
<a name="storeRMDTMasterKeyState-org.apache.hadoop.security.token.delegation.DelegationKey-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeRMDTMasterKeyState</h4>
<pre>protected abstract&nbsp;void&nbsp;storeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
DelegationToken Master Key</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeRMDTMasterKey-org.apache.hadoop.security.token.delegation.DelegationKey-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeRMDTMasterKey</h4>
<pre>public&nbsp;void&nbsp;removeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)</pre>
<div class="block">RMDTSecretManager call this to remove the state of a master key</div>
</li>
</ul>
<a name="storeNewReservation-org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeNewReservation</h4>
<pre>public&nbsp;void&nbsp;storeNewReservation(org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto&nbsp;reservationAllocation,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</pre>
<div class="block">Blocking Apis to maintain reservation state.</div>
</li>
</ul>
<a name="removeReservation-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeReservation</h4>
<pre>public&nbsp;void&nbsp;removeReservation(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)</pre>
</li>
</ul>
<a name="storeReservationState-org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeReservationState</h4>
<pre>protected abstract&nbsp;void&nbsp;storeReservationState(org.apache.hadoop.yarn.proto.YarnProtos.ReservationAllocationStateProto&nbsp;reservationAllocation,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the state of
a reservation allocation.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeReservationState-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeReservationState</h4>
<pre>protected abstract&nbsp;void&nbsp;removeReservationState(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;planName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reservationIdName)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of
a reservation allocation.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeRMDTMasterKeyState-org.apache.hadoop.security.token.delegation.DelegationKey-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeRMDTMasterKeyState</h4>
<pre>protected abstract&nbsp;void&nbsp;removeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey&nbsp;delegationKey)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of
DelegationToken Master Key</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeOrUpdateAMRMTokenSecretManagerState-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.AMRMTokenSecretManagerState-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeOrUpdateAMRMTokenSecretManagerState</h4>
<pre>protected abstract&nbsp;void&nbsp;storeOrUpdateAMRMTokenSecretManagerState(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/AMRMTokenSecretManagerState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">AMRMTokenSecretManagerState</a>&nbsp;amrmTokenSecretManagerState,
boolean&nbsp;isUpdate)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API Derived classes must implement this method to store or update
the state of AMRMToken Master Key</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="storeOrUpdateAMRMTokenSecretManager-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.AMRMTokenSecretManagerState-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeOrUpdateAMRMTokenSecretManager</h4>
<pre>public&nbsp;void&nbsp;storeOrUpdateAMRMTokenSecretManager(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/AMRMTokenSecretManagerState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">AMRMTokenSecretManagerState</a>&nbsp;amrmTokenSecretManagerState,
boolean&nbsp;isUpdate)</pre>
<div class="block">Store or Update state of AMRMToken Master Key</div>
</li>
</ul>
<a name="removeApplication-org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeApplication</h4>
<pre>public&nbsp;void&nbsp;removeApplication(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMApp.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp">RMApp</a>&nbsp;app)</pre>
<div class="block">Non-blocking API
ResourceManager services call this to remove an application from the state
store
This does not block the dispatcher threads
There is no notification of completion for this operation.</div>
</li>
</ul>
<a name="removeApplicationStateInternal-org.apache.hadoop.yarn.server.resourcemanager.recovery.records.ApplicationStateData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeApplicationStateInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;removeApplicationStateInternal(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/records/ApplicationStateData.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery.records">ApplicationStateData</a>&nbsp;appState)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of an
application and its attempts</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeApplicationAttempt-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeApplicationAttempt</h4>
<pre>public&nbsp;void&nbsp;removeApplicationAttempt(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;applicationAttemptId)</pre>
<div class="block">Non-blocking API
ResourceManager services call this to remove an attempt from the state
store
This does not block the dispatcher threads
There is no notification of completion for this operation.</div>
</li>
</ul>
<a name="removeApplicationAttemptInternal-org.apache.hadoop.yarn.api.records.ApplicationAttemptId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeApplicationAttemptInternal</h4>
<pre>protected abstract&nbsp;void&nbsp;removeApplicationAttemptInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId&nbsp;attemptId)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to remove the state of specified
attempt.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="getCredentialsFromAppAttempt-org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttempt-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCredentialsFromAppAttempt</h4>
<pre>public&nbsp;org.apache.hadoop.security.Credentials&nbsp;getCredentialsFromAppAttempt(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/rmapp/attempt/RMAppAttempt.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt">RMAppAttempt</a>&nbsp;appAttempt)</pre>
</li>
</ul>
<a name="isFencedState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFencedState</h4>
<pre>protected&nbsp;boolean&nbsp;isFencedState()</pre>
</li>
</ul>
<a name="handleStoreEvent-org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStoreEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>handleStoreEvent</h4>
<pre>protected&nbsp;void&nbsp;handleStoreEvent(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStoreEvent.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStoreEvent</a>&nbsp;event)</pre>
</li>
</ul>
<a name="notifyStoreOperationFailed-java.lang.Exception-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notifyStoreOperationFailed</h4>
<pre>protected&nbsp;void&nbsp;notifyStoreOperationFailed(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a>&nbsp;failureCause)</pre>
<div class="block">This method is called to notify the ResourceManager that the store
operation has failed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>failureCause</code> - the exception due to which the operation failed</dd>
</dl>
</li>
</ul>
<a name="deleteStore--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteStore</h4>
<pre>public abstract&nbsp;void&nbsp;deleteStore()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived classes must implement this method to delete the state store</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="removeApplication-org.apache.hadoop.yarn.api.records.ApplicationId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeApplication</h4>
<pre>public abstract&nbsp;void&nbsp;removeApplication(org.apache.hadoop.yarn.api.records.ApplicationId&nbsp;removeAppId)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Derived classes must implement this method to remove application from the
state store</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
</dl>
</li>
</ul>
<a name="setResourceManager-org.apache.hadoop.yarn.server.resourcemanager.ResourceManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResourceManager</h4>
<pre>public&nbsp;void&nbsp;setResourceManager(<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/ResourceManager.html" title="class in org.apache.hadoop.yarn.server.resourcemanager">ResourceManager</a>&nbsp;rm)</pre>
</li>
</ul>
<a name="getRMStateStoreState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRMStateStoreState</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.RMStateStoreState.html" title="enum in org.apache.hadoop.yarn.server.resourcemanager.recovery">RMStateStore.RMStateStoreState</a>&nbsp;getRMStateStoreState()</pre>
</li>
</ul>
<a name="getRMStateStoreEventHandler--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRMStateStoreEventHandler</h4>
<pre>protected&nbsp;org.apache.hadoop.yarn.event.EventHandler&nbsp;getRMStateStoreEventHandler()</pre>
</li>
</ul>
<a name="storeProxyCACert-java.security.cert.X509Certificate-java.security.PrivateKey-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeProxyCACert</h4>
<pre>public&nbsp;void&nbsp;storeProxyCACert(<a href="https://docs.oracle.com/javase/8/docs/api/java/security/cert/X509Certificate.html?is-external=true" title="class or interface in java.security.cert">X509Certificate</a>&nbsp;caCert,
<a href="https://docs.oracle.com/javase/8/docs/api/java/security/PrivateKey.html?is-external=true" title="class or interface in java.security">PrivateKey</a>&nbsp;caPrivateKey)</pre>
<div class="block">ProxyCAManager calls this to store the CA Certificate and Private Key.</div>
</li>
</ul>
<a name="storeProxyCACertState-java.security.cert.X509Certificate-java.security.PrivateKey-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>storeProxyCACertState</h4>
<pre>protected abstract&nbsp;void&nbsp;storeProxyCACertState(<a href="https://docs.oracle.com/javase/8/docs/api/java/security/cert/X509Certificate.html?is-external=true" title="class or interface in java.security.cert">X509Certificate</a>&nbsp;caCert,
<a href="https://docs.oracle.com/javase/8/docs/api/java/security/PrivateKey.html?is-external=true" title="class or interface in java.security">PrivateKey</a>&nbsp;caPrivateKey)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Blocking API
Derived classes must implement this method to store the CA Certificate
and Private Key</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</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/RMStateStore.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/yarn/server/resourcemanager/recovery/Recoverable.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.recovery"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.ProxyCAState.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.recovery"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/yarn/server/resourcemanager/recovery/RMStateStore.html" target="_top">Frames</a></li>
<li><a href="RMStateStore.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</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; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>