~ubuntu-branches/ubuntu/maverick/evolution-data-server/maverick-proposed

« back to all changes in this revision

Viewing changes to libdb/docs/api_cxx/env_close.html

  • Committer: Bazaar Package Importer
  • Author(s): Didier Roche
  • Date: 2010-05-17 17:02:06 UTC
  • mfrom: (1.1.79 upstream) (1.6.12 experimental)
  • Revision ID: james.westby@ubuntu.com-20100517170206-4ufr52vwrhh26yh0
Tags: 2.30.1-1ubuntu1
* Merge from debian experimental. Remaining change:
  (LP: #42199, #229669, #173703, #360344, #508494)
  + debian/control:
    - add Vcs-Bzr tag
    - don't use libgnome
    - Use Breaks instead of Conflicts against evolution 2.25 and earlier.
  + debian/evolution-data-server.install,
    debian/patches/45_libcamel_providers_version.patch:
    - use the upstream versioning, not a Debian-specific one 
  + debian/libedata-book1.2-dev.install, debian/libebackend-1.2-dev.install,
    debian/libcamel1.2-dev.install, debian/libedataserverui1.2-dev.install:
    - install html documentation
  + debian/rules:
    - don't build documentation it's shipped with the tarball

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!--$Id$-->
2
 
<!--Copyright 1997-2002 by Sleepycat Software, Inc.-->
3
 
<!--All rights reserved.-->
4
 
<!--See the file LICENSE for redistribution information.-->
5
 
<html>
6
 
<head>
7
 
<title>Berkeley DB: DbEnv::close</title>
8
 
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
9
 
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
10
 
</head>
11
 
<body bgcolor=white>
12
 
<a name="2"><!--meow--></a>
13
 
<table width="100%"><tr valign=top>
14
 
<td>
15
 
<h1>DbEnv::close</h1>
16
 
</td>
17
 
<td align=right>
18
 
<a href="../api_cxx/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../reftoc.html"><img src="../images/ref.gif" alt="Ref"></a>
19
 
</td></tr></table>
20
 
<hr size=1 noshade>
21
 
<tt>
22
 
<h3><pre>
23
 
#include &lt;db_cxx.h&gt;
24
 
<p>
25
 
DbEnv::close(u_int32_t flags);
26
 
</pre></h3>
27
 
<h1>Description</h1>
28
 
<p>The DbEnv::close method closes the Berkeley DB environment, freeing any
29
 
allocated resources and closing any underlying subsystems.
30
 
<p>Calling DbEnv::close does not imply closing any databases that
31
 
were opened in the environment, and all databases opened in the
32
 
environment should be closed before the environment is closed.
33
 
<p>The <b>flags</b> parameter is currently unused, and must be set to 0.
34
 
<p>Where the environment was initialized with the <a href="../api_cxx/env_open.html#DB_INIT_LOCK">DB_INIT_LOCK</a> flag,
35
 
calling DbEnv::close does not release any locks still held by the
36
 
closing process, providing functionality for long-lived locks.
37
 
Processes that want to have all their locks
38
 
released can do so by issuing the appropriate <a href="../api_cxx/lock_vec.html">DbEnv::lock_vec</a> call.
39
 
<p>Where the environment was initialized with the <a href="../api_cxx/env_open.html#DB_INIT_MPOOL">DB_INIT_MPOOL</a>
40
 
flag, calling DbEnv::close implies calls to <a href="../api_cxx/memp_fclose.html">DbMpoolFile::close</a> for
41
 
any remaining open files in the memory pool that were returned to this
42
 
process by calls to <a href="../api_cxx/memp_fopen.html">DbMpoolFile::open</a>.  It does not imply a call to
43
 
<a href="../api_cxx/memp_fsync.html">DbMpoolFile::sync</a> for those files.
44
 
<p>Where the environment was initialized with the <a href="../api_cxx/env_open.html#DB_INIT_TXN">DB_INIT_TXN</a> flag,
45
 
calling DbEnv::close aborts any unresolved transactions.
46
 
Applications should not depend on this behavior for transactions
47
 
involving Berkeley DB databases; all such transactions should be explicitly
48
 
resolved.  The problem with depending on this semantic is that aborting
49
 
an unresolved transaction involving database operations requires a
50
 
database handle.  Because the database handles should have been closed before
51
 
calling DbEnv::close, it will not be possible to abort the
52
 
transaction, and recovery will have to be run on the Berkeley DB environment
53
 
before further operations are done.
54
 
<p>Where log cursors were created using the <a href="../api_cxx/log_cursor.html">DbEnv::log_cursor</a> method, calling
55
 
DbEnv::close does not imply closing those cursors.
56
 
<p>In multithreaded applications, only a single thread may call
57
 
DbEnv::close.
58
 
<p>After DbEnv::close has been called, regardless of its return, the
59
 
Berkeley DB environment handle may not be accessed again.
60
 
<p>The DbEnv::close method either returns a non-zero error value or throws an exception that
61
 
encapsulates a non-zero error value on failure, and returns 0 on success.
62
 
<h1>Errors</h1>
63
 
<p>The DbEnv::close method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods.
64
 
If a catastrophic error has occurred, the DbEnv::close method may fail and
65
 
either return <a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a> or throw a
66
 
<a href="../api_cxx/runrec_class.html">DbRunRecoveryException</a>,
67
 
in which case all subsequent Berkeley DB calls will fail in the same way.
68
 
<h1>Class</h1>
69
 
<a href="../api_cxx/env_class.html">DbEnv</a>
70
 
<h1>See Also</h1>
71
 
<a href="../api_cxx/env_list.html">Database Environments and Related Methods</a>
72
 
</tt>
73
 
<table width="100%"><tr><td><br></td><td align=right>
74
 
<a href="../api_cxx/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../reftoc.html"><img src="../images/ref.gif" alt="Ref"></a>
75
 
</td></tr></table>
76
 
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
77
 
</body>
78
 
</html>