stasis/je-7.5.11/docs/java/com/sleepycat/je/rep/util/ReplicationGroupAdmin.html
2019-06-25 16:12:40 -04:00

596 lines
29 KiB
HTML

<!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_151) on Tue Oct 31 17:36:46 EDT 2017 -->
<title>ReplicationGroupAdmin (Oracle - Berkeley DB Java Edition API)</title>
<meta name="date" content="2017-10-31">
<link rel="stylesheet" type="text/css" href="../../../../../style.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="ReplicationGroupAdmin (Oracle - Berkeley DB Java Edition API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ReplicationGroupAdmin.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 class="aboutLanguage"><b>Berkeley DB Java Edition</b><br><font size=\"-1\"> version 7.5.11</font>
</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/sleepycat/je/rep/util/DbResetRepGroup.html" title="class in com.sleepycat.je.rep.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/sleepycat/je/rep/util/ReplicationGroupAdmin.html" target="_top">Frames</a></li>
<li><a href="ReplicationGroupAdmin.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>Field&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>Field&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">com.sleepycat.je.rep.util</div>
<h2 title="Class ReplicationGroupAdmin" class="title">Class ReplicationGroupAdmin</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.sleepycat.je.rep.util.ReplicationGroupAdmin</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">ReplicationGroupAdmin</span>
extends java.lang.Object</pre>
<div class="block">Administrative APIs for use by applications which do not have direct access
to a replicated environment. The class supplies methods that can be
used to list group members, remove members, update network addresses, and
find the current master.
Information is found and updated by querying nodes in the group. Because of
that, ReplicationGroupAdmin can only obtain information when there is at
least one node alive in the replication group.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== 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="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#ReplicationGroupAdmin-java.lang.String-java.util.Set-">ReplicationGroupAdmin</a></span>(java.lang.String&nbsp;groupName,
java.util.Set&lt;java.net.InetSocketAddress&gt;&nbsp;helperSockets)</code>
<div class="block">Constructs a group admin object.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/sleepycat/je/rep/ReplicationGroup.html" title="class in com.sleepycat.je.rep">ReplicationGroup</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#getGroup--">getGroup</a></span>()</code>
<div class="block">Returns the current composition of the group from the Master.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#getGroupName--">getGroupName</a></span>()</code>
<div class="block">Returns the name of the replication group.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.net.InetSocketAddress&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#getHelperSockets--">getHelperSockets</a></span>()</code>
<div class="block">Returns the helper sockets being used to contact a replication group
member, in order to query for the information.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#getMasterNodeName--">getMasterNodeName</a></span>()</code>
<div class="block">Returns the node name associated with the master</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/sleepycat/je/rep/NodeState.html" title="class in com.sleepycat.je.rep">NodeState</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#getNodeState-com.sleepycat.je.rep.ReplicationNode-int-">getNodeState</a></span>(<a href="../../../../../com/sleepycat/je/rep/ReplicationNode.html" title="interface in com.sleepycat.je.rep">ReplicationNode</a>&nbsp;repNode,
int&nbsp;socketConnectTimeout)</code>
<div class="block">Returns the <a href="../../../../../com/sleepycat/je/rep/NodeState.html" title="class in com.sleepycat.je.rep"><code>state</code></a> of a replicated
node and <code>state</code> of the application where the node is
running in.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#removeMember-java.lang.String-">removeMember</a></span>(java.lang.String&nbsp;nodeName)</code>
<div class="block">Removes this node from the group, so that it is no longer a member of
the group.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#setHelperSockets-java.util.Set-">setHelperSockets</a></span>(java.util.Set&lt;java.net.InetSocketAddress&gt;&nbsp;helperSockets)</code>
<div class="block">Sets the helper sockets being used to contact a replication group
member, in order to query for the information.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#transferMaster-java.util.Set-int-java.util.concurrent.TimeUnit-boolean-">transferMaster</a></span>(java.util.Set&lt;java.lang.String&gt;&nbsp;nodeNames,
int&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;timeUnit,
boolean&nbsp;force)</code>
<div class="block">Transfers the master state from the current master to one of the
electable replicas supplied in the argument list.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/util/ReplicationGroupAdmin.html#updateAddress-java.lang.String-java.lang.String-int-">updateAddress</a></span>(java.lang.String&nbsp;nodeName,
java.lang.String&nbsp;newHostName,
int&nbsp;newPort)</code>
<div class="block">Update the network address for a specified member of the replication
group.</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.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ReplicationGroupAdmin-java.lang.String-java.util.Set-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ReplicationGroupAdmin</h4>
<pre>public&nbsp;ReplicationGroupAdmin(java.lang.String&nbsp;groupName,
java.util.Set&lt;java.net.InetSocketAddress&gt;&nbsp;helperSockets)</pre>
<div class="block">Constructs a group admin object.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>groupName</code> - the name of the group to be administered</dd>
<dd><code>helperSockets</code> - the sockets on which it can contact helper nodes
in the replication group to carry out admin services.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getHelperSockets--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHelperSockets</h4>
<pre>public&nbsp;java.util.Set&lt;java.net.InetSocketAddress&gt;&nbsp;getHelperSockets()</pre>
<div class="block">Returns the helper sockets being used to contact a replication group
member, in order to query for the information.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the set of helper sockets.</dd>
</dl>
</li>
</ul>
<a name="setHelperSockets-java.util.Set-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHelperSockets</h4>
<pre>public&nbsp;void&nbsp;setHelperSockets(java.util.Set&lt;java.net.InetSocketAddress&gt;&nbsp;helperSockets)</pre>
<div class="block">Sets the helper sockets being used to contact a replication group
member, in order to query for the information.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>helperSockets</code> - the sockets on which it can contact helper nodes
in the replication group to carry out admin services.</dd>
</dl>
</li>
</ul>
<a name="getGroupName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGroupName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getGroupName()</pre>
<div class="block">Returns the name of the replication group.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the group name.</dd>
</dl>
</li>
</ul>
<a name="getMasterNodeName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMasterNodeName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getMasterNodeName()
throws <a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a>,
<a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></pre>
<div class="block">Returns the node name associated with the master</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the master node ID</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></code> - if the master was not found</dd>
<dd><code><a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></code> - if an unexpected, internal or
environment-wide failure occurs.</dd>
</dl>
</li>
</ul>
<a name="removeMember-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMember</h4>
<pre>public&nbsp;void&nbsp;removeMember(java.lang.String&nbsp;nodeName)
throws <a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a>,
<a href="../../../../../com/sleepycat/je/rep/MemberNotFoundException.html" title="class in com.sleepycat.je.rep">MemberNotFoundException</a>,
<a href="../../../../../com/sleepycat/je/rep/MasterStateException.html" title="class in com.sleepycat.je.rep">MasterStateException</a>,
<a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></pre>
<div class="block">Removes this node from the group, so that it is no longer a member of
the group. When removed, it will no longer be able to connect to a
master, nor can it participate in elections. If the node is a <a href="../../../../../com/sleepycat/je/rep/monitor/Monitor.html" title="class in com.sleepycat.je.rep.monitor"><code>Monitor</code></a> it will no longer be informed of
election results. Once removed, a node cannot be added again to the
group under the same node name.
<p>
Ideally, the node being removed should be shut down before this call is
issued.
<p>
If the node is an active <code>Replica</code> the master will terminate
its connection with the node and will not allow the replica to reconnect
with the group, since it's no longer a member of the group. If the node
wishes to re-join it should do so with a different node name.
<p>
An active Master cannot be removed. It must first be shutdown, or
transition to the <code>Replica</code> state before it can be removed
from the group.
<p>
<a href="../../../../../com/sleepycat/je/rep/NodeType.html#SECONDARY"><code>Secondary</code></a> nodes cannot be removed; they
automatically leave the group when they are shut down or become
disconnected from the master.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>nodeName</code> - identifies the node being removed from the group</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></code> - if the master was not found</dd>
<dd><code>java.lang.IllegalArgumentException</code> - if the type of the node is <code>SECONDARY</code></dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/MemberNotFoundException.html" title="class in com.sleepycat.je.rep">MemberNotFoundException</a></code> - if the node denoted by
<code>nodeName</code> is not a member of the replication group</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/MasterStateException.html" title="class in com.sleepycat.je.rep">MasterStateException</a></code> - if the member being removed is currently
the Master</dd>
<dd><code><a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></code> - if an unexpected, internal or
environment-wide failure occurs.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a
href="../../../../../../ReplicationGuide/utilities.html#node-addremove"
target="_top">Adding and Removing Nodes From the Group</a></dd>
</dl>
</li>
</ul>
<a name="getGroup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGroup</h4>
<pre>public&nbsp;<a href="../../../../../com/sleepycat/je/rep/ReplicationGroup.html" title="class in com.sleepycat.je.rep">ReplicationGroup</a>&nbsp;getGroup()
throws <a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a>,
<a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></pre>
<div class="block">Returns the current composition of the group from the Master.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the group description</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></code> - if the master was not found</dd>
<dd><code><a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></code> - if an unexpected, internal or
environment-wide failure occurs</dd>
</dl>
</li>
</ul>
<a name="getNodeState-com.sleepycat.je.rep.ReplicationNode-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNodeState</h4>
<pre>public&nbsp;<a href="../../../../../com/sleepycat/je/rep/NodeState.html" title="class in com.sleepycat.je.rep">NodeState</a>&nbsp;getNodeState(<a href="../../../../../com/sleepycat/je/rep/ReplicationNode.html" title="interface in com.sleepycat.je.rep">ReplicationNode</a>&nbsp;repNode,
int&nbsp;socketConnectTimeout)
throws java.io.IOException,
com.sleepycat.je.rep.utilint.ServiceDispatcher.ServiceConnectFailedException</pre>
<div class="block">Returns the <a href="../../../../../com/sleepycat/je/rep/NodeState.html" title="class in com.sleepycat.je.rep"><code>state</code></a> of a replicated
node and <code>state</code> of the application where the node is
running in.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>repNode</code> - a ReplicationNode includes those information which are
needed to connect to the node</dd>
<dd><code>socketConnectTimeout</code> - the timeout value for creating a socket
connection with the replicated node</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the state of the replicated node</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the machine is down or no response is returned</dd>
<dd><code>com.sleepycat.je.rep.utilint.ServiceDispatcher.ServiceConnectFailedException</code> - if can't connect to the service
running on the replicated node</dd>
</dl>
</li>
</ul>
<a name="updateAddress-java.lang.String-java.lang.String-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateAddress</h4>
<pre>public&nbsp;void&nbsp;updateAddress(java.lang.String&nbsp;nodeName,
java.lang.String&nbsp;newHostName,
int&nbsp;newPort)
throws <a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a>,
<a href="../../../../../com/sleepycat/je/rep/MasterStateException.html" title="class in com.sleepycat.je.rep">MasterStateException</a>,
<a href="../../../../../com/sleepycat/je/rep/MemberNotFoundException.html" title="class in com.sleepycat.je.rep">MemberNotFoundException</a>,
<a href="../../../../../com/sleepycat/je/rep/ReplicaStateException.html" title="class in com.sleepycat.je.rep">ReplicaStateException</a>,
<a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></pre>
<div class="block">Update the network address for a specified member of the replication
group. When updating the address of this target replication node, the
node cannot be alive. One common use case is when the replication member
must be moved to a new host, possibly because of machine failure.
<p>
To make a network address change, take these steps:
<ol>
<li> Shutdown the node that is being updated.
<li> Use this method to change the hostname and port of the node.
<li> Start the node on the new machine, or at its new port, using the new
hostname/port. If the log files are available at the node, they will
be reused. A network restore operation may need to be initiated by
the application to copy over any needed log files if no log files are
available, or if they have become obsolete.
</ol>
<p>
The address of a <a href="../../../../../com/sleepycat/je/rep/NodeType.html#SECONDARY"><code>NodeType.SECONDARY</code></a> node cannot be updated with
this method, since nodes must be members but not alive to be updated,
and secondary nodes are not members when they are not alive. To change
the address of a secondary node, restart the node with the updated
address.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>nodeName</code> - the name of the node whose address will be updated.</dd>
<dd><code>newHostName</code> - the new host name of the node</dd>
<dd><code>newPort</code> - the new port number of the node</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../com/sleepycat/je/EnvironmentFailureException.html" title="class in com.sleepycat.je">EnvironmentFailureException</a></code> - if an unexpected, internal or
environment-wide failure occurs</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/MasterStateException.html" title="class in com.sleepycat.je.rep">MasterStateException</a></code> - if the member being updated is currently
the master</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/MemberNotFoundException.html" title="class in com.sleepycat.je.rep">MemberNotFoundException</a></code> - if the node denoted by
<code>nodeName</code> is not a member of the replication group</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/ReplicaStateException.html" title="class in com.sleepycat.je.rep">ReplicaStateException</a></code> - if the member being updated is currently
alive</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></code> - if the master was not found</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/sleepycat/je/rep/util/DbResetRepGroup.html" title="class in com.sleepycat.je.rep.util"><code>DbResetRepGroup, which can be used in a
related but different use case to copy and move a group.</code></a></dd>
</dl>
</li>
</ul>
<a name="transferMaster-java.util.Set-int-java.util.concurrent.TimeUnit-boolean-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>transferMaster</h4>
<pre>public&nbsp;java.lang.String&nbsp;transferMaster(java.util.Set&lt;java.lang.String&gt;&nbsp;nodeNames,
int&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;timeUnit,
boolean&nbsp;force)
throws <a href="../../../../../com/sleepycat/je/rep/MasterTransferFailureException.html" title="class in com.sleepycat.je.rep">MasterTransferFailureException</a>,
<a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></pre>
<div class="block">Transfers the master state from the current master to one of the
electable replicas supplied in the argument list. This method sends a
request to the original master to perform the operation.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../com/sleepycat/je/rep/MasterTransferFailureException.html" title="class in com.sleepycat.je.rep">MasterTransferFailureException</a></code> - if the master transfer operation
fails</dd>
<dd><code><a href="../../../../../com/sleepycat/je/rep/UnknownMasterException.html" title="class in com.sleepycat.je.rep">UnknownMasterException</a></code> - if the master was not found</dd>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>nodeNames</code> contains the name
of a node that is not electable</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/sleepycat/je/rep/ReplicatedEnvironment.html#transferMaster-java.util.Set-int-java.util.concurrent.TimeUnit-"><code>ReplicatedEnvironment.transferMaster(java.util.Set&lt;java.lang.String&gt;, int, java.util.concurrent.TimeUnit)</code></a></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/ReplicationGroupAdmin.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 class="aboutLanguage"><b>Berkeley DB Java Edition</b><br><font size=\"-1\"> version 7.5.11</font>
</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/sleepycat/je/rep/util/DbResetRepGroup.html" title="class in com.sleepycat.je.rep.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/sleepycat/je/rep/util/ReplicationGroupAdmin.html" target="_top">Frames</a></li>
<li><a href="ReplicationGroupAdmin.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>Field&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>Field&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><font size=1>Copyright (c) 2002, 2017 Oracle and/or its affiliates. All rights reserved.</font> </small></p>
</body>
</html>