libdb/docs/api_reference/CXX/dblocknotgranted.html
2011-09-13 13:44:24 -04:00

168 lines
8.2 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>DbLockNotGrantedException</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="dbexception.html" title="Chapter 6. The DbException Class" />
<link rel="prev" href="dbdeadlock.html" title="DbDeadlockException" />
<link rel="next" href="dbmemory.html" title="DbMemoryException" />
</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">DbLockNotGrantedException</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="dbdeadlock.html">Prev</a> </td>
<th width="60%" align="center">Chapter 6. The DbException Class</th>
<td width="20%" align="right"> <a accesskey="n" href="dbmemory.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="dblocknotgranted"></a>DbLockNotGrantedException</h2>
</div>
</div>
</div>
<pre class="programlisting">#include &lt;db_cxx.h&gt;
class DbLockNotGrantedException : public DbException {
public:
db_lockop_t get_op() const;
db_lockmode_t get_mode() const;
const Dbt* get_obj() const;
DbLock *get_lock() const;
int get_index() const;
}; </pre>
<p>
This information describes the <code class="classname">DbLockNotGrantedException</code> class and how
it is used by the various Berkeley DB classes.
</p>
<p>
A <code class="classname">DbLockNotGrantedException</code> is thrown when
lock or transaction timeouts have been configured, a database operation has timed out, and the
<a class="link" href="envset_flags.html#envset_flags_DB_TIME_NOTGRANTED">DB_TIME_NOTGRANTED</a>
configuration flag has been specified.
</p>
<p>
Additionally <code class="classname">DbLockNotGrantedException</code> is thrown when a Berkeley DB
Concurrent Data Store database environment configured for lock timeouts was unable to grant
a lock in the allowed time.
</p>
<p>
Finally, <code class="classname">DbLockNotGrantedException</code> is thrown when a lock requested using the
<a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a>
or
<a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a>
methods, where the <a class="link" href="lockvec.html#vec_DB_LOCK_NOWAIT">DB_LOCK_NOWAIT</a>
flag or lock timers were configured, could not be granted before the wait-time expired.
</p>
<p>
The <a class="link" href="dbexception.html" title="Chapter 6. The DbException Class">DbException</a> errno value is set to
<code class="literal">DB_LOCK_NOTGRANTED</code>.
</p>
<p>
The following getter methods are available on this class:
</p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>
<code class="methodname">get_op()</code>
</p>
<p>
Returns <code class="literal">DB_LOCK_GET</code> when <a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a>
was called, and returns the <span class="bold"><strong>op</strong></span> for the failed
<code class="literal">DB_LOCKREQ</code> when <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a>
was called. If this exception is raised due to a database
operation, <code class="literal">DB_LOCK_GET</code> is returned.
</p>
</li>
<li>
<p>
<code class="methodname">get_mode()</code>
</p>
<p>
Returns the <span class="bold"><strong>mode</strong></span> parameter when
<a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a> was called, and returns the
<span class="bold"><strong>mode</strong></span> for the failed <code class="literal">DB_LOCKREQ</code>
when <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a> was called.
If this exception is raised due to a database operation,
<code class="literal">DB_LOCK_NG</code> is returned.
</p>
</li>
<li>
<p>
<code class="methodname">get_obj()</code>
</p>
<p>
Returns the <span class="bold"><strong>object</strong></span> parameter when
<a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a> was called, and returns the
<span class="bold"><strong>object</strong></span> for the failed <code class="literal">DB_LOCKREQ</code>
when <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a> was called.
The <a class="link" href="dbt.html" title="Chapter 4.  The Dbt Handle">Dbt</a> pointer may or may not refer valid
memory, depending on whether the <a class="link" href="dbt.html" title="Chapter 4.  The Dbt Handle">Dbt</a>
used in the call to the failed <a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a>
or <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a> method is still in
scope and has not been deleted.
</p>
</li>
<li>
<p>
<code class="methodname">get_lock()</code>
</p>
<p>
Returns NULL when <a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a> was called,
and returns the <span class="bold"><strong>lock</strong></span> in the failed <code class="literal">DB_LOCKREQ</code>
when <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a> was called.
If this exception is raised due to a database operation, NULL is returned.
</p>
</li>
<li>
<p>
<code class="methodname">get_index()</code>
</p>
<p>
Returns <code class="literal">-1</code> when <a class="xref" href="lockget.html" title="DbEnv::lock_get()">DbEnv::lock_get()</a> was called,
and returns the index of the failed <code class="literal">DB_LOCKREQ</code>
when <a class="xref" href="lockvec.html" title="DbEnv::lock_vec()">DbEnv::lock_vec()</a> was called.
If this exception is raised due to a database operation,
<code class="literal">0</code> is returned.
</p>
</li>
</ul>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="dbdeadlock.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="dbexception.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="dbmemory.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">DbDeadlockException </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> DbMemoryException</td>
</tr>
</table>
</div>
</body>
</html>