blob: 1b42ce884fc4533ee0df3cf207ee915631eea07b [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:06:55 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DatanodeAdminMonitorBase (Apache Hadoop HDFS 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="DatanodeAdminMonitorBase (Apache Hadoop HDFS 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":6,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
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/DatanodeAdminMonitorBase.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/hdfs/server/blockmanagement/DatanodeAdminDefaultMonitor.html" title="class in org.apache.hadoop.hdfs.server.blockmanagement"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html" target="_top">Frames</a></li>
<li><a href="DatanodeAdminMonitorBase.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hdfs.server.blockmanagement</div>
<h2 title="Class DatanodeAdminMonitorBase" class="title">Class DatanodeAdminMonitorBase</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.hdfs.server.blockmanagement.DatanodeAdminMonitorBase</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/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a>, org.apache.hadoop.conf.Configurable, <a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminBackoffMonitor.html" title="class in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminBackoffMonitor</a>, <a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminDefaultMonitor.html" title="class in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminDefaultMonitor</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">DatanodeAdminMonitorBase</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a>, org.apache.hadoop.conf.Configurable</pre>
<div class="block">This abstract class provides some base methods which are inherited by
the DatanodeAdmin BackOff and Default Monitors, which control decommission
and maintenance mode.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&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>protected org.apache.hadoop.hdfs.server.blockmanagement.BlockManager</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#blockManager">blockManager</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected org.apache.hadoop.conf.Configuration</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#conf">conf</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#dnAdmin">dnAdmin</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#maxConcurrentTrackedNodes">maxConcurrentTrackedNodes</a></span></code>
<div class="block">The maximum number of nodes to track in outOfServiceNodeBlocks.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.hdfs.server.namenode.Namesystem</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#namesystem">namesystem</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#pendingNodes">pendingNodes</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/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#DatanodeAdminMonitorBase--">DatanodeAdminMonitorBase</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>org.apache.hadoop.conf.Configuration</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#getConf--">getConf</a></span>()</code>
<div class="block">Get the current Configuration stored in this object.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#getPendingNodeCount--">getPendingNodeCount</a></span>()</code>
<div class="block">Get the number of datanodes nodes in the pending queue.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#getPendingNodes--">getPendingNodes</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#processConf--">processConf</a></span>()</code>
<div class="block">Abstract method which must be implemented by the sub-classes to process
set various instance variables from the Configuration passed at object
creation time.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#setBlockManager-org.apache.hadoop.hdfs.server.blockmanagement.BlockManager-">setBlockManager</a></span>(org.apache.hadoop.hdfs.server.blockmanagement.BlockManager&nbsp;bm)</code>
<div class="block">Set the blockmanager for the cluster.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#setConf-org.apache.hadoop.conf.Configuration-">setConf</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
<div class="block">Used by the Configurable interface, which is used by ReflectionUtils
to create an instance of the monitor class.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#setDatanodeAdminManager-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager-">setDatanodeAdminManager</a></span>(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager&nbsp;admin)</code>
<div class="block">Set the DatanodeAdminManager instance in use in the namenode.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#setNameSystem-org.apache.hadoop.hdfs.server.namenode.Namesystem-">setNameSystem</a></span>(org.apache.hadoop.hdfs.server.namenode.Namesystem&nbsp;ns)</code>
<div class="block">Set the cluster namesystem.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html#startTrackingNode-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor-">startTrackingNode</a></span>(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&nbsp;dn)</code>
<div class="block">Start tracking a node for decommission or maintenance.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminMonitorInterface">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.hadoop.hdfs.server.blockmanagement.<a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#getNumNodesChecked--">getNumNodesChecked</a>, <a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#getTrackedNodeCount--">getTrackedNodeCount</a>, <a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#stopTrackingNode-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor-">stopTrackingNode</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Runnable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html?is-external=true#run--" title="class or interface in java.lang">run</a></code></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="blockManager">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>blockManager</h4>
<pre>protected&nbsp;org.apache.hadoop.hdfs.server.blockmanagement.BlockManager blockManager</pre>
</li>
</ul>
<a name="namesystem">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>namesystem</h4>
<pre>protected&nbsp;org.apache.hadoop.hdfs.server.namenode.Namesystem namesystem</pre>
</li>
</ul>
<a name="dnAdmin">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dnAdmin</h4>
<pre>protected&nbsp;org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager dnAdmin</pre>
</li>
</ul>
<a name="conf">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>conf</h4>
<pre>protected&nbsp;org.apache.hadoop.conf.Configuration conf</pre>
</li>
</ul>
<a name="pendingNodes">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pendingNodes</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&gt; pendingNodes</pre>
</li>
</ul>
<a name="maxConcurrentTrackedNodes">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>maxConcurrentTrackedNodes</h4>
<pre>protected&nbsp;int maxConcurrentTrackedNodes</pre>
<div class="block">The maximum number of nodes to track in outOfServiceNodeBlocks.
A value of 0 means no limit.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="DatanodeAdminMonitorBase--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DatanodeAdminMonitorBase</h4>
<pre>public&nbsp;DatanodeAdminMonitorBase()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setNameSystem-org.apache.hadoop.hdfs.server.namenode.Namesystem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNameSystem</h4>
<pre>public&nbsp;void&nbsp;setNameSystem(org.apache.hadoop.hdfs.server.namenode.Namesystem&nbsp;ns)</pre>
<div class="block">Set the cluster namesystem.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#setNameSystem-org.apache.hadoop.hdfs.server.namenode.Namesystem-">setNameSystem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ns</code> - The namesystem for the cluster</dd>
</dl>
</li>
</ul>
<a name="setBlockManager-org.apache.hadoop.hdfs.server.blockmanagement.BlockManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBlockManager</h4>
<pre>public&nbsp;void&nbsp;setBlockManager(org.apache.hadoop.hdfs.server.blockmanagement.BlockManager&nbsp;bm)</pre>
<div class="block">Set the blockmanager for the cluster.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#setBlockManager-org.apache.hadoop.hdfs.server.blockmanagement.BlockManager-">setBlockManager</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bm</code> - The cluster BlockManager</dd>
</dl>
</li>
</ul>
<a name="setDatanodeAdminManager-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDatanodeAdminManager</h4>
<pre>public&nbsp;void&nbsp;setDatanodeAdminManager(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager&nbsp;admin)</pre>
<div class="block">Set the DatanodeAdminManager instance in use in the namenode.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#setDatanodeAdminManager-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeAdminManager-">setDatanodeAdminManager</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>admin</code> - The current DatanodeAdminManager</dd>
</dl>
</li>
</ul>
<a name="setConf-org.apache.hadoop.conf.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setConf</h4>
<pre>public&nbsp;void&nbsp;setConf(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
<div class="block">Used by the Configurable interface, which is used by ReflectionUtils
to create an instance of the monitor class. This method will be called to
pass the Configuration to the new object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>setConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>conf</code> - configuration to be used</dd>
</dl>
</li>
</ul>
<a name="getConf--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConf</h4>
<pre>public&nbsp;org.apache.hadoop.conf.Configuration&nbsp;getConf()</pre>
<div class="block">Get the current Configuration stored in this object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Configuration used when the object was created</dd>
</dl>
</li>
</ul>
<a name="processConf--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>processConf</h4>
<pre>protected abstract&nbsp;void&nbsp;processConf()</pre>
<div class="block">Abstract method which must be implemented by the sub-classes to process
set various instance variables from the Configuration passed at object
creation time.</div>
</li>
</ul>
<a name="startTrackingNode-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startTrackingNode</h4>
<pre>public&nbsp;void&nbsp;startTrackingNode(org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&nbsp;dn)</pre>
<div class="block">Start tracking a node for decommission or maintenance. The given Datanode
will be queued for later processing in pendingNodes. This method must be
called under the namenode write lock.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#startTrackingNode-org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor-">startTrackingNode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dn</code> - The datanode to start tracking</dd>
</dl>
</li>
</ul>
<a name="getPendingNodeCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPendingNodeCount</h4>
<pre>public&nbsp;int&nbsp;getPendingNodeCount()</pre>
<div class="block">Get the number of datanodes nodes in the pending queue. Ie the count of
nodes waiting to decommission but have not yet started the process.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#getPendingNodeCount--">getPendingNodeCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The count of pending nodes</dd>
</dl>
</li>
</ul>
<a name="getPendingNodes--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPendingNodes</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor&gt;&nbsp;getPendingNodes()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html#getPendingNodes--">getPendingNodes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement">DatanodeAdminMonitorInterface</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/DatanodeAdminMonitorBase.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/hdfs/server/blockmanagement/DatanodeAdminDefaultMonitor.html" title="class in org.apache.hadoop.hdfs.server.blockmanagement"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorInterface.html" title="interface in org.apache.hadoop.hdfs.server.blockmanagement"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminMonitorBase.html" target="_top">Frames</a></li>
<li><a href="DatanodeAdminMonitorBase.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>