libdb/docs/gsg_txn/CXX/index.html
2012-11-14 16:35:20 -05:00

543 lines
18 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>Getting Started with Berkeley DB Transaction Processing</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="Getting Started with Berkeley DB Transaction Processing" />
<link rel="next" href="preface.html" title="Preface" />
</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">Getting Started with Berkeley DB Transaction Processing</th>
</tr>
<tr>
<td width="20%" align="left"> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="preface.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="book" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h1 class="title"><a id="idm243608"></a>Getting Started with Berkeley DB Transaction Processing</h1>
</div>
<div>
<div class="legalnotice">
<a id="idp43984"></a>
<p class="legalnotice-title">
<b>Legal Notice</b>
</p>
<span>
<p>
This documentation is distributed under an open source license.
You may review the terms of this license at:
<a class="ulink" href="http://www.oracle.com/technetwork/database/berkeleydb/downloads/oslicense-093458.html" target="_top">http://www.oracle.com/technetwork/database/berkeleydb/downloads/oslicense-093458.html</a>
</p>
<p>
Oracle, Berkeley DB,
and
Sleepycat are trademarks or registered trademarks of
Oracle. All rights to these marks are reserved.
No third-party use is permitted without the
express prior written consent of Oracle.
</p>
<p>
Other names may be trademarks of their respective owners.
</p>
<p>
To obtain a copy of this document's original source code, please
submit a request to the Oracle Technology Network forum at:
<a class="ulink" href="http://forums.oracle.com/forums/forum.jspa?forumID=271" target="_top">http://forums.oracle.com/forums/forum.jspa?forumID=271</a>
</p>
</span>
</div>
</div>
<div>
<p class="pubdate">5/11/2012</p>
</div>
</div>
<hr />
</div>
<div class="toc">
<p>
<b>Table of Contents</b>
</p>
<dl>
<dt>
<span class="preface">
<a href="preface.html">Preface</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="preface.html#conventions">Conventions Used in this Book</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="moreinfo.html">For More Information</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="moreinfo.html#contact_us">Contact Us</a>
</span>
</dt>
</dl>
</dd>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="introduction.html">1. Introduction</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="introduction.html#txnintro">Transaction Benefits</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="sysfailure.html">A Note on System Failure</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="apireq.html">Application Requirements</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="multithread-intro.html">Multi-threaded
<span>and Multi-process</span>
Applications</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="recovery-intro.html">Recoverability</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="perftune-intro.html">Performance Tuning</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="enabletxn.html">2. Enabling Transactions</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="enabletxn.html#environments">Environments</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="enabletxn.html#filenaming">File Naming</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="enabletxn.html#errorsupport">Error Support</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="enabletxn.html#sharedmemory">Shared Memory Regions</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="enabletxn.html#security">Security Considerations</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="envopen.html">Opening a Transactional Environment and
<span>Database</span>
</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="usingtxns.html">3. Transaction Basics</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="usingtxns.html#commitresults">Committing a Transaction</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="nodurabletxn.html">Non-Durable Transactions</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="abortresults.html">Aborting a Transaction</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="autocommit.html">Auto Commit</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="nestedtxn.html">Nested Transactions</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="txncursor.html">Transactional Cursors</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="txnindices.html">Secondary Indices with Transaction Applications</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="maxtxns.html">Configuring the Transaction Subsystem</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="txnconcurrency.html">4. Concurrency</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="txnconcurrency.html#concurrenthandles">Which DB Handles are Free-Threaded</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="blocking_deadlocks.html">Locks, Blocks, and Deadlocks</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="blocking_deadlocks.html#locks">Locks</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="blocking_deadlocks.html#blocks">Blocks</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="blocking_deadlocks.html#deadlocks">Deadlocks</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="lockingsubsystem.html">The Locking Subsystem</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="lockingsubsystem.html#configuringlock">Configuring the Locking Subsystem</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="lockingsubsystem.html#configdeadlkdetect">Configuring Deadlock Detection</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="lockingsubsystem.html#deadlockresolve">Resolving Deadlocks</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="lockingsubsystem.html#setpriority">Setting Transaction Priorities</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="isolation.html">Isolation</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="isolation.html#degreesofisolation">Supported Degrees of Isolation</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="isolation.html#dirtyreads">Reading Uncommitted Data</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="isolation.html#readcommitted">Committed Reads</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="isolation.html#snapshot_isolation">Using Snapshot Isolation</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="txn_ccursor.html">Transactional Cursors and Concurrent Applications</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="txn_ccursor.html#cursordirtyreads">Using Cursors with Uncommitted Data</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="exclusivelock.html">Exclusive Database Handles</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="readmodifywrite.html">Read/Modify/Write</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="txnnowait.html">No Wait on Blocks</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="reversesplit.html">Reverse BTree Splits</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="filemanagement.html">5. Managing DB Files</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="filemanagement.html#checkpoints">Checkpoints</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="backuprestore.html">Backup Procedures</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="backuprestore.html#copyutilities">About Unix Copy Utilities</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="backuprestore.html#standardbackup">Offline Backups</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="backuprestore.html#hotbackup">Hot Backup</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="backuprestore.html#incrementalbackups">Incremental Backups</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="recovery.html">Recovery Procedures</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="recovery.html#normalrecovery">Normal Recovery</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="recovery.html#catastrophicrecovery">Catastrophic Recovery</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="architectrecovery.html">Designing Your Application for Recovery</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="architectrecovery.html#multithreadrecovery">Recovery for Multi-Threaded Applications</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="architectrecovery.html#multiprocessrecovery">Recovery in Multi-Process Applications</a>
</span>
</dt>
</dl>
</dd>
<dt>
<span class="sect1">
<a href="hotfailover.html">Using Hot Failovers</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="logfileremoval.html">Removing Log Files</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="logconfig.html">Configuring the Logging Subsystem</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect2">
<a href="logconfig.html#logfilesize">Setting the Log File Size</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="logconfig.html#logregionsize">Configuring the Logging Region Size</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="logconfig.html#inmemorylogging">Configuring In-Memory Logging</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="logconfig.html#logbuffer">Setting the In-Memory Log Buffer Size</a>
</span>
</dt>
</dl>
</dd>
</dl>
</dd>
<dt>
<span class="chapter">
<a href="wrapup.html">6. Summary and Examples</a>
</span>
</dt>
<dd>
<dl>
<dt>
<span class="sect1">
<a href="wrapup.html#anatomy">Anatomy of a Transactional Application</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="txnexample_c.html">Transaction Example</a>
</span>
</dt>
<dt>
<span class="sect1">
<a href="inmem_txnexample_c.html">In-Memory Transaction Example</a>
</span>
</dt>
</dl>
</dd>
</dl>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"> </td>
<td width="20%" align="center"> </td>
<td width="40%" align="right"> <a accesskey="n" href="preface.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top"> </td>
<td width="20%" align="center"> </td>
<td width="40%" align="right" valign="top"> Preface</td>
</tr>
</table>
</div>
</body>
</html>