mirror of
https://github.com/berkeleydb/je.git
synced 2024-11-15 01:46:24 +00:00
524 lines
19 KiB
HTML
524 lines
19 KiB
HTML
|
<?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, Java Edition 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, Java Edition Transaction Processing" />
|
|||
|
<link rel="next" href="preface.html" title="Preface" />
|
|||
|
</head>
|
|||
|
<body>
|
|||
|
<div xmlns="" class="navheader">
|
|||
|
<div class="libver">
|
|||
|
<p>Library Version 12.2.7.5</p>
|
|||
|
</div>
|
|||
|
<table width="100%" summary="Navigation header">
|
|||
|
<tr>
|
|||
|
<th colspan="3" align="center">Getting Started with Berkeley DB, Java Edition 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="idp516544"></a>Getting Started with Berkeley DB, Java Edition Transaction Processing</h1>
|
|||
|
</div>
|
|||
|
<div>
|
|||
|
<div class="legalnotice">
|
|||
|
<a id="idp658176"></a>
|
|||
|
<p class="legalnotice-title">
|
|||
|
<b>Legal Notice</b>
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
Copyright © 2002 - 2017 Oracle and/or its affiliates. All rights
|
|||
|
reserved.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
This software and related documentation are provided under a
|
|||
|
license agreement containing restrictions on use and disclosure
|
|||
|
and are protected by intellectual property laws. Except as
|
|||
|
expressly permitted in your license agreement or allowed by
|
|||
|
law, you may not use, copy, reproduce, translate, broadcast,
|
|||
|
modify, license, transmit, distribute, exhibit, perform,
|
|||
|
publish, or display any part, in any form, or by any means.
|
|||
|
Reverse engineering, disassembly, or decompilation of this
|
|||
|
software, unless required by law for interoperability, is
|
|||
|
prohibited.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
The information contained herein is subject to change without
|
|||
|
notice and is not warranted to be error-free. If you find any
|
|||
|
errors, please report them to us in writing.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
Berkeley DB,
|
|||
|
|
|||
|
<span>Berkeley DB Java Edition</span>
|
|||
|
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>
|
|||
|
If this is software or related documentation that is delivered
|
|||
|
to the U.S. Government or anyone licensing it on behalf of the
|
|||
|
U.S. Government, the following notice is applicable:
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
U.S. GOVERNMENT END USERS: Oracle programs, including any
|
|||
|
operating system, integrated software, any programs installed
|
|||
|
on the hardware, and/or documentation, delivered to U.S.
|
|||
|
Government end users are "commercial computer software"
|
|||
|
pursuant to the applicable Federal Acquisition Regulation and
|
|||
|
agency-specific supplemental regulations. As such, use,
|
|||
|
duplication, disclosure, modification, and adaptation of the
|
|||
|
programs, including any operating system, integrated software,
|
|||
|
any programs installed on the hardware, and/or documentation,
|
|||
|
shall be subject to license terms and license restrictions
|
|||
|
applicable to the programs. No other rights are granted to the
|
|||
|
U.S. Government.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
This software or hardware is developed for general use in a
|
|||
|
variety of information management applications. It is not
|
|||
|
developed or intended for use in any inherently dangerous
|
|||
|
applications, including applications that may create a risk of
|
|||
|
personal injury. If you use this software or hardware in
|
|||
|
dangerous applications, then you shall be responsible to take
|
|||
|
all appropriate fail-safe, backup, redundancy, and other
|
|||
|
measures to ensure its safe use. Oracle Corporation and its
|
|||
|
affiliates disclaim any liability for any damages caused by use
|
|||
|
of this software or hardware in dangerous applications.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
Oracle and Java are registered trademarks of Oracle and/or its
|
|||
|
affiliates. Other names may be trademarks of their respective
|
|||
|
owners.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
Intel and Intel Xeon are trademarks or registered trademarks of
|
|||
|
Intel Corporation. All SPARC trademarks are used under license
|
|||
|
and are trademarks or registered trademarks of SPARC
|
|||
|
International, Inc. AMD, Opteron, the AMD logo, and the AMD
|
|||
|
Opteron logo are trademarks or registered trademarks of
|
|||
|
Advanced Micro Devices. UNIX is a registered trademark of The
|
|||
|
Open Group.
|
|||
|
</p>
|
|||
|
<p>
|
|||
|
This software or hardware and documentation may provide access
|
|||
|
to or information on content, products, and services from third
|
|||
|
parties. Oracle Corporation and its affiliates are not
|
|||
|
responsible for and expressly disclaim all warranties of any
|
|||
|
kind with respect to third-party content, products, and
|
|||
|
services. Oracle Corporation and its affiliates will not be
|
|||
|
responsible for any loss, costs, or damages incurred due to
|
|||
|
your access to or use of third-party content, products, or
|
|||
|
services.
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div>
|
|||
|
<p class="pubdate">31-Oct-2017</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
|
|||
|
|
|||
|
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#envopen">Opening a Transactional Environment and
|
|||
|
|
|||
|
<span>Store or 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="txncursor.html">Transactional Cursors</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txncursor.html#dplcursors">Using Transactional DPL Cursors</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</dl>
|
|||
|
</dd>
|
|||
|
<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 JE 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="jelock.html">JE Lock Management</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="jelock.html#jelocktimeout">Managing JE Lock Timeouts</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="jelock.html#jedeadlock">Managing Deadlocks and other Lock Conflicts</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#serializable">Configuring Serializable 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="readmodifywrite.html">Read/Modify/Write</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</dl>
|
|||
|
</dd>
|
|||
|
<dt>
|
|||
|
<span class="chapter">
|
|||
|
<a href="jebackuprestore.html">5. Backing up and Restoring Berkeley DB, Java Edition Applications</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="jebackuprestore.html#datamod">Normal Recovery</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="chkpoint.html">Checkpoints</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="backup.html">Performing Backups</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="backup.html#partialBackup">Performing a Hot Backup</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="backup.html#completeBackup">Performing an Offline Backup</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="backup.html#dbbackuphelper">Using the DbBackup Helper Class</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</dl>
|
|||
|
</dd>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="jecatastrophicrecovery.html">Performing Catastrophic Recovery</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="jehotfailover.html">Hot Failover</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</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_java.html">Base API Transaction Example</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_java.html#txnguideexample">TxnGuide.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_java.html#payloaddata">PayloadData.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_java.html#dbwriter">DBWriter.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</dl>
|
|||
|
</dd>
|
|||
|
<dt>
|
|||
|
<span class="sect1">
|
|||
|
<a href="txnexample_dpl.html">DPL Transaction Example</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dd>
|
|||
|
<dl>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_dpl.html#txnguideexample_dpl">TxnGuide.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_dpl.html#payloaddataentity">PayloadDataEntity.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
<dt>
|
|||
|
<span class="sect2">
|
|||
|
<a href="txnexample_dpl.html#storewriter">StoreWriter.java</a>
|
|||
|
</span>
|
|||
|
</dt>
|
|||
|
</dl>
|
|||
|
</dd>
|
|||
|
</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>
|