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

« back to all changes in this revision

Viewing changes to libdb/docs/ref/mp/config.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 Reference Guide: Configuring the memory pool</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><h3><dl><dt>Berkeley DB Reference Guide:<dd>Memory Pool Subsystem</dl></h3></td>
15
 
<td align=right><a href="../../ref/mp/intro.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../reftoc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/txn/intro.html"><img src="../../images/next.gif" alt="Next"></a>
16
 
</td></tr></table>
17
 
<p>
18
 
<h1 align=center>Configuring the memory pool</h1>
19
 
<p>There are two issues to consider when configuring the memory pool.
20
 
<p>The first issue, the most important tuning parameter for Berkeley DB
21
 
applications, is the size of the memory pool.  There are two ways to
22
 
specify the pool size.  First, calling the <a href="../../api_c/env_set_cachesize.html">DB_ENV-&gt;set_cachesize</a> method
23
 
specifies the pool size for all of the applications sharing the Berkeley DB
24
 
environment.  Second, the <a href="../../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a> method only specifies a
25
 
pool size for the specific database.  Note: It is meaningless to call
26
 
<a href="../../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a> for a database opened inside of a Berkeley DB
27
 
environment because the environment pool size will override any pool
28
 
size specified for a single database.  For information on tuning the
29
 
Berkeley DB cache size, see <a href="../../ref/am_conf/cachesize.html">Selecting
30
 
a cache size</a>.
31
 
<p>The second memory pool configuration issue is the maximum size an
32
 
underlying file can be and still be mapped into the process address
33
 
space (instead of reading the file's pages into the cache).  Mapping
34
 
files into the process address space can result in better performance
35
 
because available virtual memory is often much larger than the local
36
 
cache, and page faults are faster than page copying on many systems.
37
 
However, in the presence of limited virtual memory, it can cause
38
 
resource starvation; and in the presence of large databases, it can
39
 
result in immense process sizes.  In addition, because of the
40
 
requirements of the Berkeley DB transactional implementation, only read-only
41
 
files can be mapped into process memory.
42
 
<p>To specify that no files are to be mapped into the process address space,
43
 
specify the <a href="../../api_c/env_set_flags.html#DB_NOMMAP">DB_NOMMAP</a> flag to the <a href="../../api_c/env_set_flags.html">DB_ENV-&gt;set_flags</a> interface.
44
 
To specify that any individual file should not be mapped into the process
45
 
address space, specify the <a href="../../api_c/env_set_flags.html#DB_NOMMAP">DB_NOMMAP</a> flag to the
46
 
<a href="../../api_c/memp_fopen.html">DB_MPOOLFILE-&gt;open</a> interface.  To limit the size of files mapped into the
47
 
process address space, use the <a href="../../api_c/env_set_mp_mmapsize.html">DB_ENV-&gt;set_mp_mmapsize</a> method.
48
 
<table width="100%"><tr><td><br></td><td align=right><a href="../../ref/mp/intro.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../reftoc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/txn/intro.html"><img src="../../images/next.gif" alt="Next"></a>
49
 
</td></tr></table>
50
 
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
51
 
</body>
52
 
</html>