joinenv.html   [plain text]


<!--$Id: joinenv.so,v 1.1 2005/09/09 12:40:34 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB Reference Guide: Release 4.4: DB_JOINENV</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Upgrading Berkeley DB Applications</dl></b></td>
<td align=right><a href="../upgrade.4.4/isolation.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.4.4/mutex.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p align=center><b>Release 4.4: DB_JOINENV</b></p>
<p>The semantics of joining existing Berkeley DB database environments has changed
in the 4.4 release.  Previously:</p>
<ol>
<p><li>Applications joining existing environments, but not configuring some of
the subsystems configured in the environment when it was created, would
not be configured for those subsystems.
<p><li>Applications joining existing environments, but configuring additional
subsystems in addition to the subsystems configured in the environment
when it was created, would cause additional subsystems to be configured
in the database environment.
</ol>
<p>In the 4.4 release, the semantics have been simplified to make it easier
to write robust applications.  In the 4.4 release:</p>
<ol>
<p><li>Applications joining existing environments, but not configuring some of
the subsystems configured in the environment when it was created, will
now automatically be configured for all of the subsystems configured in
the environment.
<p><li>Applications joining existing environments, but configuring additional
subsystems in addition to the subsystems configured in the environment
when it was created, will fail, as no additional subsystems can be
configured for a database environment after it is created.
</ol>
<p>In other words, the choice of subsystems initialized for a Berkeley DB
database environment is specified by the thread of control initially
creating the environment.  Any subsequent thread of control joining the
environment will automatically be configured to use the same subsystems
as were created in the environment (unless the thread of control
requests a subsystem not available in the environment, which will fail).
Applications joining an environment, able to adapt to whatever
subsystems have been configured in the environment, should open the
environment without specifying any subsystem flags.  Applications
joining an environment, requiring specific subsystems from their
environments, should open the environment specifying those specific
subsystem flags.</p>
<p>The DB_JOINENV flag has been changed to have no effect in the Berkeley DB 4.4
release.  Applications should require no changes, although uses of the
DB_JOINENV flag may be removed.</p>
<table width="100%"><tr><td><br></td><td align=right><a href="../upgrade.4.4/isolation.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.4.4/mutex.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>