mirror of
https://github.com/berkeleydb/libdb.git
synced 2024-11-17 09:36:24 +00:00
140 lines
6.1 KiB
HTML
140 lines
6.1 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>txn commit</title>
|
||
<link rel="stylesheet" href="apiReference.css" type="text/css" />
|
||
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
|
||
<link rel="start" href="index.html" title="Berkeley DB TCL API Reference" />
|
||
<link rel="up" href="tclapi.html" title="Chapter 1. Berkeley DB Tcl APIs" />
|
||
<link rel="prev" href="txn_checkpoint.html" title="env txn_checkpoint" />
|
||
<link rel="next" href="version.html" title="berkdb version" />
|
||
</head>
|
||
<body>
|
||
<div xmlns="" class="navheader">
|
||
<div class="libver">
|
||
<p>Library Version 11.2.5.2</p>
|
||
</div>
|
||
<table width="100%" summary="Navigation header">
|
||
<tr>
|
||
<th colspan="3" align="center"><span xmlns="http://www.w3.org/1999/xhtml" class="emphasis"><em>txn</em></span> commit</th>
|
||
</tr>
|
||
<tr>
|
||
<td width="20%" align="left"><a accesskey="p" href="txn_checkpoint.html">Prev</a> </td>
|
||
<th width="60%" align="center">Chapter 1.
|
||
Berkeley DB Tcl APIs
|
||
</th>
|
||
<td width="20%" align="right"> <a accesskey="n" href="version.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="txn_commit"></a><span class="emphasis"><em>txn</em></span> commit</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<pre class="programlisting">txn commit
|
||
[-nosync]
|
||
[-sync] </pre>
|
||
<p>
|
||
The <span class="emphasis"><em>txn</em></span> <span class="bold"><strong>commit</strong></span>
|
||
command ends the transaction.
|
||
</p>
|
||
<p>
|
||
In the case of nested transactions, if the transaction is a parent
|
||
transaction with unresolved (neither committed or aborted) child
|
||
transactions, the child transactions are aborted and the commit of the
|
||
parent will succeed.
|
||
</p>
|
||
<p>
|
||
In the case of nested transactions, if the transaction is a child
|
||
transaction, its locks are not released, but are acquired by its
|
||
parent. Although the commit of the child transaction will succeed, the
|
||
actual resolution of the child transaction is postponed until the
|
||
parent transaction is committed or aborted; that is, if its parent
|
||
transaction commits, it will be committed, and if its parent
|
||
transaction aborts, it will be aborted.
|
||
</p>
|
||
<p>
|
||
If the <span class="bold"><strong>-nosync</strong></span> option is not
|
||
specified, a commit log record is written and flushed to disk, as are
|
||
all previously written log records.
|
||
</p>
|
||
<p>
|
||
The options are as follows:
|
||
</p>
|
||
<div class="itemizedlist">
|
||
<ul type="disc">
|
||
<li>
|
||
<p>
|
||
<span class="bold"><strong>-nosync</strong></span>
|
||
</p>
|
||
<p>
|
||
Do not synchronously flush the log. This means the transaction will
|
||
exhibit the ACI (atomicity, consistency, and isolation) properties,
|
||
but not D (durability); that is, database integrity will be
|
||
maintained, but it is possible that this transaction may be undone
|
||
during recovery instead of being redone.
|
||
</p>
|
||
<p>
|
||
This behavior may be set for an entire Berkeley DB environment as part
|
||
of the <span class="bold"><strong>berkdb env</strong></span> call.
|
||
</p>
|
||
</li>
|
||
<li>
|
||
<p>
|
||
<span class="bold"><strong>-sync</strong></span>
|
||
</p>
|
||
<p>
|
||
Synchronously flush the log. This means the transaction will exhibit
|
||
all of the ACID (atomicity, consistency, isolation and durability)
|
||
properties.
|
||
</p>
|
||
<p>
|
||
This behavior is the default for Berkeley DB environments unless the
|
||
<span class="bold"><strong>-nosync</strong></span> option was specified to the
|
||
<span class="bold"><strong>berkdb env</strong></span> or
|
||
<span class="emphasis"><em>env</em></span> <span class="bold"><strong>txn</strong></span> calls.
|
||
</p>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<p>
|
||
After <span class="emphasis"><em>txn</em></span> <span class="bold"><strong>commit</strong></span>
|
||
has been called, regardless of its return, the <span class="bold"><strong>txn</strong></span> handle may not be accessed again. If
|
||
<span class="emphasis"><em>txn</em></span> <span class="bold"><strong>commit</strong></span>
|
||
encounters an error, this transaction and all child transactions of
|
||
this transaction are aborted.
|
||
</p>
|
||
<p>
|
||
The <span class="emphasis"><em>txn</em></span> <span class="bold"><strong>commit</strong></span>
|
||
command returns 0 on success, and in the case of error, a Tcl error is
|
||
thrown.
|
||
</p>
|
||
</div>
|
||
<div class="navfooter">
|
||
<hr />
|
||
<table width="100%" summary="Navigation footer">
|
||
<tr>
|
||
<td width="40%" align="left"><a accesskey="p" href="txn_checkpoint.html">Prev</a> </td>
|
||
<td width="20%" align="center">
|
||
<a accesskey="u" href="tclapi.html">Up</a>
|
||
</td>
|
||
<td width="40%" align="right"> <a accesskey="n" href="version.html">Next</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td width="40%" align="left" valign="top"><span class="emphasis"><em>env</em></span> txn_checkpoint </td>
|
||
<td width="20%" align="center">
|
||
<a accesskey="h" href="index.html">Home</a>
|
||
</td>
|
||
<td width="40%" align="right" valign="top"> berkdb version</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</body>
|
||
</html>
|