2011-09-13 17:44:24 +00:00
<?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 > DB_TXN-> discard()< / 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 C API Reference" / >
< link rel = "up" href = "txn.html" title = "Chapter 12. The DB_TXN Handle" / >
< link rel = "prev" href = "txncommit.html" title = "DB_TXN->commit()" / >
< link rel = "next" href = "txnget_name.html" title = "DB_TXN->get_name()" / >
< / head >
< body >
< div xmlns = "" class = "navheader" >
< div class = "libver" >
2012-11-14 21:35:20 +00:00
< p > Library Version 11.2.5.3< / p >
2011-09-13 17:44:24 +00:00
< / div >
< table width = "100%" summary = "Navigation header" >
< tr >
< th colspan = "3" align = "center" > DB_TXN-> discard()< / th >
< / tr >
< tr >
< td width = "20%" align = "left" > < a accesskey = "p" href = "txncommit.html" > Prev< / a > < / td >
< th width = "60%" align = "center" > Chapter 12.
The DB_TXN Handle
< / th >
< td width = "20%" align = "right" > < a accesskey = "n" href = "txnget_name.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 = "txndiscard" > < / a > DB_TXN-> discard()< / h2 >
< / div >
< / div >
< / div >
< pre class = "programlisting" > #include < db.h>
int
DB_TXN-> discard(DB_TXN *tid, u_int32_t flags); < / pre >
< p >
The < code class = "methodname" > DB_TXN-> discard()< / code > method frees up all the per-process resources
associated with the specified < a class = "link" href = "txn.html" title = "Chapter 12. The DB_TXN Handle" > DB_TXN< / a > handle, neither
committing nor aborting the transaction. This call may be used only
after calls to < a class = "xref" href = "txnrecover.html" title = "DB_ENV->txn_recover()" > DB_ENV-> txn_recover()< / a > when
there are multiple global transaction managers recovering transactions
in a single Berkeley DB environment. Any transactions returned by
< a class = "xref" href = "txnrecover.html" title = "DB_ENV->txn_recover()" > DB_ENV-> txn_recover()< / a >
that are not handled by the current global transaction manager should
be discarded using < code class = "methodname" > DB_TXN-> discard()< / code > .
< / p >
< p >
All open cursors in the transaction are closed and the
first cursor close error, if any, is returned.
< / p >
< p >
The < code class = "methodname" > DB_TXN-> discard()< / code > < span >
< span >
method returns a non-zero error value on failure and 0 on success.
< / span >
< / span >
The errors values that this method returns include the error values of < code class = "methodname" > DBcursor-> close()< / code > and the following:
< / p >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h4 class = "title" > < a id = "idp62915552" > < / a > DB_LOCK_DEADLOCK< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
A transactional database environment operation was selected to resolve
a deadlock.
< / p >
< / div >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h4 class = "title" > < a id = "idp62896608" > < / a > DB_LOCK_NOTGRANTED< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
A Berkeley DB Concurrent Data Store database environment configured
for lock timeouts was unable to grant a lock in the allowed time.
< / p >
2012-11-14 21:35:20 +00:00
< p >
You attempted to open a database handle that is configured
for no waiting exclusive locking, but the exclusive lock could not be
immediately obtained. See
< a class = "xref" href = "dbset_lk_exclusive.html" title = "DB->set_lk_exclusive()" > DB-> set_lk_exclusive()< / a >
for more information.
< / p >
2011-09-13 17:44:24 +00:00
< / div >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h4 class = "title" > < a id = "idp62905768" > < / a > EINVAL< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
If the cursor is already closed; or if an invalid flag value or parameter was specified.
< / p >
< / div >
< p >
After < code class = "methodname" > DB_TXN-> discard()< / code > has been called, regardless of its return,
the < a class = "link" href = "txn.html" title = "Chapter 12. The DB_TXN Handle" > DB_TXN< / a > handle may not
be accessed again.
< / p >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h3 class = "title" > < a id = "idp62926096" > < / a > Parameters< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h4 class = "title" > < a id = "idp62926288" > < / a > flags< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
The < span class = "bold" > < strong > flags< / strong > < / span > parameter is currently
unused, and must be set to 0.
< / p >
< / div >
< / div >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h3 class = "title" > < a id = "idp62889680" > < / a > Errors< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
The < code class = "methodname" > DB_TXN-> discard()< / code > < span >
< span >
method may fail and return one of the following non-zero errors:
< / span >
< / span >
< / p >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h4 class = "title" > < a id = "idp62924632" > < / a > EINVAL< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
If the transaction handle does not refer to a transaction that was
recovered into a prepared but not yet completed state; or if an
invalid flag value or parameter was specified.
< / p >
< / div >
< / div >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h3 class = "title" > < a id = "idp62899936" > < / a > Class< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
< a class = "link" href = "env.html" title = "Chapter 5. The DB_ENV Handle" > DB_ENV< / a > , < a class = "link" href = "txn.html" title = "Chapter 12. The DB_TXN Handle" > DB_TXN< / a >
< / p >
< / div >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2012-11-14 21:35:20 +00:00
< h3 class = "title" > < a id = "idp62886008" > < / a > See Also< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
< a class = "xref" href = "txn.html#txnlist" title = "Transaction Subsystem and Related Methods" > Transaction Subsystem and Related Methods< / a >
< / p >
< / div >
< / div >
< div class = "navfooter" >
< hr / >
< table width = "100%" summary = "Navigation footer" >
< tr >
< td width = "40%" align = "left" > < a accesskey = "p" href = "txncommit.html" > Prev< / a > < / td >
< td width = "20%" align = "center" >
< a accesskey = "u" href = "txn.html" > Up< / a >
< / td >
< td width = "40%" align = "right" > < a accesskey = "n" href = "txnget_name.html" > Next< / a > < / td >
< / tr >
< tr >
< td width = "40%" align = "left" valign = "top" > DB_TXN-> commit() < / td >
< td width = "20%" align = "center" >
< a accesskey = "h" href = "index.html" > Home< / a >
< / td >
< td width = "40%" align = "right" valign = "top" > DB_TXN-> get_name()< / td >
< / tr >
< / table >
< / div >
< / body >
< / html >