config.html   [plain text]


<!--$Id: config.so,v 10.22 2008/04/29 22:35:23 mbrey Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB Reference Guide: Configuring logging</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>
<a name="2"><!--meow--></a>
<table width="100%"><tr valign=top>
<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Logging Subsystem</dl></b></td>
<td align=right><a href="../log/intro.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../log/limits.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p align=center><b>Configuring logging</b></p>
<p>The aspects of logging that may be configured are the size of the
logging subsystem's region, the size of the log files on disk and the
size of the log buffer in memory.  The <a href="../../api_c/env_set_lg_regionmax.html">DB_ENV-&gt;set_lg_regionmax</a> method
specifies the size of the logging subsystem's region, in bytes.  The
logging subsystem's default size is approximately 60KB.  This value may
need to be increased if a large number of files are registered with the
Berkeley DB log manager, for example, by opening a large number of Berkeley DB
database files in a transactional application.</p>
<p>The <a href="../../api_c/env_set_lg_max.html">DB_ENV-&gt;set_lg_max</a> method specifies the individual log file size for
all the applications sharing the Berkeley DB environment.  Setting the log
file size is largely a matter of convenience and a reflection of the
application's preferences in backup media and frequency.  However,
setting the log file size too low can potentially cause problems because
it would be possible to run out of log sequence numbers, which requires
a full archival and application restart to reset.  See
<a href="../../ref/log/limits.html">Log file limits</a> for more
information.</p>
<p>The <a href="../../api_c/env_set_lg_bsize.html">DB_ENV-&gt;set_lg_bsize</a> method specifies the size of the in-memory log
buffer, in bytes.  Log information is stored in memory until the buffer
fills up or transaction commit forces the buffer to be written to disk.
Larger buffer sizes can significantly increase throughput in the
presence of long-running transactions, highly concurrent applications,
or transactions producing large amounts of data.  By default, the buffer
is approximately 32KB.</p>
<p>The <a href="../../api_c/env_set_lg_dir.html">DB_ENV-&gt;set_lg_dir</a> method specifies the directory in which
log files will be placed.  By default, log files are placed in
the environment home directory.</p>
<p>The <a href="../../api_c/env_set_lg_mode.html">DB_ENV-&gt;set_lg_filemode</a> method specifies the absolute file mode for
created log files.  This method is only useful for the rare Berkeley DB
application that does not control its umask value.</p>
<p>The <a href="../../api_c/env_log_set_config.html">DB_ENV-&gt;log_set_config</a> method configures several boolean parameters
that control the use of file system controls such as O_DIRECT and O_DSYNC,
automatic removal of log files, in-memory logging, and pre-zeroing of logfiles.</p>
<table width="100%"><tr><td><br></td><td align=right><a href="../log/intro.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../log/limits.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>