1<!--$Id: autocommit.so,v 1.3 2005/02/10 20:02:42 bostic Exp $--> 2<!--Copyright (c) 1997,2008 Oracle. All rights reserved.--> 3<!--See the file LICENSE for redistribution information.--> 4<html> 5<head> 6<title>Berkeley DB Reference Guide: Release 4.4: DB_AUTO_COMMIT</title> 7<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> 8<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++"> 9</head> 10<body bgcolor=white> 11<table width="100%"><tr valign=top> 12<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Upgrading Berkeley DB Applications</dl></b></td> 13<td align=right><a href="/upgrade.4.4/intro.html"><img src="/images/prev.gif" alt="Prev"></a><a href="/toc.html"><img src="/images/ref.gif" alt="Ref"></a><a href="/upgrade.4.4/isolation.html"><img src="/images/next.gif" alt="Next"></a> 14</td></tr></table> 15<p align=center><b>Release 4.4: DB_AUTO_COMMIT</b></p> 16<p>In previous Berkeley DB releases, the <a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> flag was used in 17the C and C++ Berkeley DB APIs to wrap operations within a transaction without 18explicitly creating a transaction and passing the <a href="/api_c/txn_class.html">DB_TXN</a> handle 19as part of the operation method call. In the 4.4 release, the 20<a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> flag no longer needs to be explicitly specified.</p> 21<p>In the 4.4 release, specifying the <a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> flag to the 22<a href="/api_c/env_set_flags.html">DB_ENV->set_flags</a> method causes all database modifications in that 23environment to be transactional; specifying <a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> to 24the <a href="/api_c/db_open.html">DB->open</a> method causes all modifications to that database to be 25transactional; specifying <a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> to the 26<a href="/api_c/env_dbremove.html">DB_ENV->dbremove</a> and <a href="/api_c/env_dbrename.html">DB_ENV->dbrename</a> methods causes those 27specific operations to be transactional.</p> 28<p>No related application changes are required for this release, as the 29<a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> flag is ignored where it is no longer needed. 30However, application writers are encouraged to remove uses of the 31<a href="/api_c/env_set_flags.html#DB_AUTO_COMMIT">DB_AUTO_COMMIT</a> flag in places where it is no longer needed.</p> 32<p>Similar changes have been made to the Berkeley DB Tcl API. These changes are 33not optional, and Tcl applications will need to remove the -auto_commit 34flag from methods where it is no longer needed.</p> 35<table width="100%"><tr><td><br></td><td align=right><a href="/upgrade.4.4/intro.html"><img src="/images/prev.gif" alt="Prev"></a><a href="/toc.html"><img src="/images/ref.gif" alt="Ref"></a><a href="/upgrade.4.4/isolation.html"><img src="/images/next.gif" alt="Next"></a> 36</td></tr></table> 37<p><font size=1>Copyright (c) 1996,2008 Oracle. All rights reserved.</font> 38</body> 39</html> 40