blob: d365974e74ce720d2ab842f44da906c239f659ad [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 -->
<title>AutoBalancer (Apache Geode 1.15.1)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AutoBalancer (Apache Geode 1.15.1)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":42,"i3":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated 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="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>Prev&nbsp;Class</li>
<li><a href="../../../../../org/apache/geode/cache/util/CacheListenerAdapter.html" title="class in org.apache.geode.cache.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/cache/util/AutoBalancer.html" target="_top">Frames</a></li>
<li><a href="AutoBalancer.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.geode.cache.util</div>
<h2 title="Class AutoBalancer" class="title">Class AutoBalancer</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.geode.cache.util.AutoBalancer</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></dd>
</dl>
<hr>
<br>
<pre><a href="../../../../../org/apache/geode/annotations/Experimental.html" title="annotation in org.apache.geode.annotations">@Experimental</a>(<a href="../../../../../org/apache/geode/annotations/Experimental.html#value--">value</a>="The autobalancer may be removed or the API may change in future releases")
public class <span class="typeNameLabel">AutoBalancer</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/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></pre>
<div class="block">Re-balancing operation relocates data from heavily loaded members to lightly loaded members. In
most cases, the decision to re-balance is based on the size of the member and a few other
statistics. <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html" title="class in org.apache.geode.cache.util"><code>AutoBalancer</code></a> monitors these statistics and if necessary, triggers a
re-balancing request. Auto-Balancing is expected to prevent failures and data loss.
<P>
This implementation is based on <code>ConfigInitialization</code> implementation. By default
auto-balancing is disabled. A user needs to configure <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html" title="class in org.apache.geode.cache.util"><code>AutoBalancer</code></a> during cache
initialization <a href="../../../../../org/apache/geode/cache/GemFireCache.html#getInitializer--"><code>GemFireCache.getInitializer()</code></a>
<P>
In a cluster only one member owns auto-balancing responsibility. This is achieved by grabbing a
distributed lock. In case of a failure a new member will grab the lock and manage auto balancing.
<P>
<a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html" title="class in org.apache.geode.cache.util"><code>AutoBalancer</code></a> can be controlled using the following configurations
<OL>
<LI><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SCHEDULE"><code>SCHEDULE</code></a>
<LI>TBD THRESHOLDS
</OL></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>static <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></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#AUTO_BALANCER_LOCK">AUTO_BALANCER_LOCK</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#AUTO_BALANCER_LOCK_SERVICE_NAME">AUTO_BALANCER_LOCK_SERVICE_NAME</a></span></code>
<div class="block">Name of the DistributedLockService that <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html" title="class in org.apache.geode.cache.util"><code>AutoBalancer</code></a> will use to guard against
concurrent maintenance activity</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#DEFAULT_MINIMUM_SIZE">DEFAULT_MINIMUM_SIZE</a></span></code>
<div class="block">Default value of <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#MINIMUM_SIZE"><code>MINIMUM_SIZE</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#DEFAULT_SIZE_THRESHOLD_PERCENT">DEFAULT_SIZE_THRESHOLD_PERCENT</a></span></code>
<div class="block">Default value of <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT"><code>SIZE_THRESHOLD_PERCENT</code></a>.</div>
</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/geode/cache/util/AutoBalancer.html#MINIMUM_SIZE">MINIMUM_SIZE</a></span></code>
<div class="block">In the initial data load phases, <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT"><code>SIZE_THRESHOLD_PERCENT</code></a> based rebalance
invocation may be unnecessary.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SCHEDULE">SCHEDULE</a></span></code>
<div class="block">Use this configuration to manage out-of-balance audit frequency.</div>
</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/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT">SIZE_THRESHOLD_PERCENT</a></span></code>
<div class="block">Use this configuration to manage re-balance invocation.</div>
</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/geode/cache/util/AutoBalancer.html#AutoBalancer--">AutoBalancer</a></span>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#AutoBalancer-org.apache.geode.cache.util.AutoBalancer.AuditScheduler-org.apache.geode.cache.util.AutoBalancer.OOBAuditor-org.apache.geode.cache.util.AutoBalancer.TimeProvider-org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade-">AutoBalancer</a></span>(org.apache.geode.cache.util.AutoBalancer.AuditScheduler&nbsp;scheduler,
org.apache.geode.cache.util.AutoBalancer.OOBAuditor&nbsp;auditor,
org.apache.geode.cache.util.AutoBalancer.TimeProvider&nbsp;clock,
org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade&nbsp;cacheFacade)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated 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/geode/cache/util/AutoBalancer.html#destroy--">destroy</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#getCacheOperationFacade--">getCacheOperationFacade</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#init-java.util.Properties-">init</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">as of Geode 1.5 use initialize instead.</span></div>
</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#initialize-org.apache.geode.cache.Cache-java.util.Properties-">initialize</a></span>(<a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a>&nbsp;cache,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</code>
<div class="block">Initializes a user-defined object, owned by the given cache, using the given properties.</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>
</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="SCHEDULE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SCHEDULE</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> SCHEDULE</pre>
<div class="block">Use this configuration to manage out-of-balance audit frequency. If the auditor finds the
system to be out-of-balance, it will trigger re-balancing. Any valid cron string is accepted.
The sub-expressions represent the following:
<OL>
<LI>Seconds
<LI>Minutes
<LI>Hours
<LI>Day-of-Month
<LI>Month
<LI>Day-of-Week
<LI>Year (optional field)
</OL>
<P>
For. e.g. <code>0 0 * * * ?</code> for auditing the system every hour</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.SCHEDULE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SIZE_THRESHOLD_PERCENT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SIZE_THRESHOLD_PERCENT</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> SIZE_THRESHOLD_PERCENT</pre>
<div class="block">Use this configuration to manage re-balance invocation. Rebalance operation will be triggered
if the total number of bytes rebalance operation may move is more than this threshold, in
percentage of the total data size.
<P>
Default value <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#DEFAULT_SIZE_THRESHOLD_PERCENT"><code>DEFAULT_SIZE_THRESHOLD_PERCENT</code></a></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.SIZE_THRESHOLD_PERCENT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DEFAULT_SIZE_THRESHOLD_PERCENT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_SIZE_THRESHOLD_PERCENT</h4>
<pre>public static final&nbsp;int DEFAULT_SIZE_THRESHOLD_PERCENT</pre>
<div class="block">Default value of <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT"><code>SIZE_THRESHOLD_PERCENT</code></a>. If 10% of data is misplaced, its
a good time to redistribute buckets</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.DEFAULT_SIZE_THRESHOLD_PERCENT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="MINIMUM_SIZE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MINIMUM_SIZE</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> MINIMUM_SIZE</pre>
<div class="block">In the initial data load phases, <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT"><code>SIZE_THRESHOLD_PERCENT</code></a> based rebalance
invocation may be unnecessary. Rebalance should not be triggered if the total data size managed
by cluster is too small. Rebalance operation will be triggered if the total number of bytes
rebalance operation may move is more than this number of bytes.
<P>
Default value <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#DEFAULT_MINIMUM_SIZE"><code>DEFAULT_MINIMUM_SIZE</code></a></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.MINIMUM_SIZE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DEFAULT_MINIMUM_SIZE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_MINIMUM_SIZE</h4>
<pre>public static final&nbsp;int DEFAULT_MINIMUM_SIZE</pre>
<div class="block">Default value of <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#MINIMUM_SIZE"><code>MINIMUM_SIZE</code></a>. In the initial data load phases,
<a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html#SIZE_THRESHOLD_PERCENT"><code>SIZE_THRESHOLD_PERCENT</code></a> based rebalance invocation may be unnecessary. Do
not rebalance if the data to be moved is less than 100MB</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.DEFAULT_MINIMUM_SIZE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_BALANCER_LOCK_SERVICE_NAME">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AUTO_BALANCER_LOCK_SERVICE_NAME</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> AUTO_BALANCER_LOCK_SERVICE_NAME</pre>
<div class="block">Name of the DistributedLockService that <a href="../../../../../org/apache/geode/cache/util/AutoBalancer.html" title="class in org.apache.geode.cache.util"><code>AutoBalancer</code></a> will use to guard against
concurrent maintenance activity</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.cache.util.AutoBalancer.AUTO_BALANCER_LOCK_SERVICE_NAME">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="AUTO_BALANCER_LOCK">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AUTO_BALANCER_LOCK</h4>
<pre>public static final&nbsp;<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> AUTO_BALANCER_LOCK</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="AutoBalancer--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AutoBalancer</h4>
<pre>public&nbsp;AutoBalancer()</pre>
</li>
</ul>
<a name="AutoBalancer-org.apache.geode.cache.util.AutoBalancer.AuditScheduler-org.apache.geode.cache.util.AutoBalancer.OOBAuditor-org.apache.geode.cache.util.AutoBalancer.TimeProvider-org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AutoBalancer</h4>
<pre>public&nbsp;AutoBalancer(org.apache.geode.cache.util.AutoBalancer.AuditScheduler&nbsp;scheduler,
org.apache.geode.cache.util.AutoBalancer.OOBAuditor&nbsp;auditor,
org.apache.geode.cache.util.AutoBalancer.TimeProvider&nbsp;clock,
org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade&nbsp;cacheFacade)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="initialize-org.apache.geode.cache.Cache-java.util.Properties-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a>&nbsp;cache,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/Declarable.html#initialize-org.apache.geode.cache.Cache-java.util.Properties-">Declarable</a></code></span></div>
<div class="block">Initializes a user-defined object, owned by the given cache, using the given properties.
Note that any uncaught exception
thrown by this method will cause the <code>Cache</code> initialization to fail.
Note that if this method is implemented then the deprecated init method should not be
implemented.
The product will call both methods assuming that only one will have a non-default
implementation.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/Declarable.html#initialize-org.apache.geode.cache.Cache-java.util.Properties-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cache</code> - the cache that owns this declarable</dd>
<dd><code>props</code> - Contains the parameters declared in the declarative xml file.</dd>
</dl>
</li>
</ul>
<a name="init-java.util.Properties-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;init(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">as of Geode 1.5 use initialize instead.</span></div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/Declarable.html#init-java.util.Properties-">Declarable</a></code></span></div>
<div class="block">Initializes a user-defined object using the given properties. Note that any uncaught exception
thrown by this method will cause the <code>Cache</code> initialization to fail.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/Declarable.html#init-java.util.Properties-">init</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>props</code> - Contains the parameters declared in the declarative xml file.</dd>
</dl>
</li>
</ul>
<a name="getCacheOperationFacade--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheOperationFacade</h4>
<pre>public&nbsp;org.apache.geode.cache.util.AutoBalancer.CacheOperationFacade&nbsp;getCacheOperationFacade()</pre>
</li>
</ul>
<a name="destroy--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>destroy</h4>
<pre>public&nbsp;void&nbsp;destroy()</pre>
</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="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>Prev&nbsp;Class</li>
<li><a href="../../../../../org/apache/geode/cache/util/CacheListenerAdapter.html" title="class in org.apache.geode.cache.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/cache/util/AutoBalancer.html" target="_top">Frames</a></li>
<li><a href="AutoBalancer.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 ======= -->
</body>
</html>