1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Base API Methods</title>
<link rel="stylesheet" href="gettingStarted.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Berkeley DB Programmer's Reference Guide" />
<link rel="up" href="rep.html" title="Chapter 12. Berkeley DB Replication" />
<link rel="prev" href="rep_mgr_meth.html" title="Replication Manager methods" />
<link rel="next" href="rep_comm.html" title="Building the communications infrastructure" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 11.2.5.3</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">Base API Methods</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="rep_mgr_meth.html">Prev</a> </td>
<th width="60%" align="center">Chapter 12.
Berkeley DB Replication
</th>
<td width="20%" align="right"> <a accesskey="n" href="rep_comm.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="rep_base_meth"></a>Base API Methods</h2>
</div>
</div>
</div>
<p>Base API applications use the following
Berkeley DB methods.</p>
<div class="variablelist">
<dl>
<dt>
<span class="term">
<a href="../api_reference/C/reptransport.html" class="olink">DB_ENV->rep_set_transport()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/reptransport.html" class="olink">DB_ENV->rep_set_transport()</a> method configures the replication system's
communications infrastructure.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repstart.html" class="olink">DB_ENV->rep_start()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/repstart.html" class="olink">DB_ENV->rep_start()</a> method configures (or reconfigures) an existing database
environment to be a replication master or client.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repmessage.html" class="olink">DB_ENV->rep_process_message()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/repmessage.html" class="olink">DB_ENV->rep_process_message()</a> method is used to process incoming messages
from other environments in the replication group. For clients,
it is responsible for accepting log records and updating the
local databases based on messages from the master. For both
the master and the clients, it is responsible for handling
administrative functions (for example, the protocol for dealing
with lost messages), and permitting new clients to join an
active replication group. This method should only be called
after the replication system's communications infrastructure
has been configured via <a href="../api_reference/C/reptransport.html" class="olink">DB_ENV->rep_set_transport()</a>.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repelect.html" class="olink">DB_ENV->rep_elect()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/repelect.html" class="olink">DB_ENV->rep_elect()</a> method causes the replication group to elect a
new master; it is called whenever contact with the master is
lost and the application wants the remaining sites to select a
new master.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/envevent_notify.html" class="olink">DB_ENV->set_event_notify()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/envevent_notify.html" class="olink">DB_ENV->set_event_notify()</a> method is needed for applications to
discover important replication-related events, such as the
result of an election and appointment of a new master.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/reppriority.html" class="olink">DB_ENV->rep_set_priority()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/reppriority.html" class="olink">DB_ENV->rep_set_priority()</a> method configures the local site's priority for
the purpose of elections.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repset_timeout.html" class="olink">DB_ENV->rep_set_timeout()</a>
</span>
</dt>
<dd>
<p>
This method optionally configures various timeout values. Otherwise
default timeout values as specified in <a href="../api_reference/C/repset_timeout.html" class="olink">DB_ENV->rep_set_timeout()</a> are
used.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repset_limit.html" class="olink">DB_ENV->rep_set_limit()</a>
</span>
</dt>
<dd>
<p>
The <a href="../api_reference/C/repset_limit.html" class="olink">DB_ENV->rep_set_limit()</a> method imposes an upper bound on the amount of
data that will be sent in response to a single call to
<a href="../api_reference/C/repmessage.html" class="olink">DB_ENV->rep_process_message()</a>. During client recovery, that is, when a replica
site is trying to synchronize with the master, clients may ask
the master for a large number of log records. If it is going
to harm an application for the master message loop to remain
busy for an extended period transmitting records to the
replica, then the application will want to use <a href="../api_reference/C/repset_limit.html" class="olink">DB_ENV->rep_set_limit()</a> to
limit the amount of data the master will send before
relinquishing control and accepting other messages.
</p>
</dd>
<dt>
<span class="term">
<a href="../api_reference/C/repset_request.html" class="olink">DB_ENV->rep_set_request()</a>
</span>
</dt>
<dd>
<p>
This method sets a threshold for the minimum and maximum time that
a client waits before requesting retransmission of a missing
message.
</p>
</dd>
</dl>
</div>
<p>In addition to the methods previously described, Base API applications
may also call the following methods, as needed:
<a href="../api_reference/C/repstat.html" class="olink">DB_ENV->rep_stat()</a>, <a href="../api_reference/C/repsync.html" class="olink">DB_ENV->rep_sync()</a> and <a href="../api_reference/C/repconfig.html" class="olink">DB_ENV->rep_set_config()</a>.</p>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="rep_mgr_meth.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="rep.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="rep_comm.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Replication Manager methods </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> Building the communications infrastructure</td>
</tr>
</table>
</div>
</body>
</html>
|