libdb/docs/programmer_reference/heap_conf.html
2012-11-14 16:35:20 -05:00

88 lines
4.1 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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>Heap access method specific configuration</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="am_conf.html" title="Chapter 2.  Access Method Configuration" />
<link rel="prev" href="hash_conf.html" title="Hash access method specific configuration" />
<link rel="next" href="rq_conf.html" title="Queue and Recno access method specific configuration" />
</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">Heap access method specific configuration</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="hash_conf.html">Prev</a> </td>
<th width="60%" align="center">Chapter 2. 
Access Method Configuration
</th>
<td width="20%" align="right"> <a accesskey="n" href="rq_conf.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="heap_conf"></a>Heap access method specific configuration</h2>
</div>
</div>
</div>
<p>
Configuring the Heap access method is fairly simple. Beyond the general
configuration required for any access method, you can configure how large
the database will become, as well as the amount by which the database grows.
</p>
<p>
If you provide no configuration relative to the heap size, then the
database will grow without bound. Whether this is desirable depends on
how much disk space is available to your application.
</p>
<p>
You can limit the size of the on-disk database file by using the
<a href="../api_reference/C/dbset_heapsize.html" class="olink">DB-&gt;set_heapsize()</a> method. If the size specified on this method is
reached, then further attempts to insert/update records will fail
with a <code class="literal">DB_HEAP_FULL</code> error message.
</p>
<p>
Heap databases are organized into regions, and each region is a constant
size. The size of the region in a heap database is limited by the page
size, the first page of the region contains a bitmap describing the
available space on the remaining pages in the region. When the database
experiences write contention, a region is added to reduce contention.
This means heap databases can grow in size very quickly. In order to
control the amount by which the database increases, the size of the region
is configurable via <a href="../api_reference/C/dbset_heap_regionsize.html" class="olink">DB-&gt;set_heap_regionsize()</a>.
</p>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="hash_conf.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="am_conf.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="rq_conf.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Hash access method specific configuration </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> Queue and Recno access method specific configuration</td>
</tr>
</table>
</div>
</body>
</html>