1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
<!--$Id: env_set_errcall.html,v 1.1.1.1 2003/11/20 22:14:29 toshok Exp $-->
<!--Copyright 1997-2002 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB: DbEnv::set_errcall</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table width="100%"><tr valign=top>
<td>
<h1>DbEnv::set_errcall</h1>
</td>
<td align=right>
<a href="../api_cxx/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../reftoc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include <db_cxx.h>
<p>
void DbEnv::set_errcall(
void (*db_errcall_fcn)(const char *errpfx, char *msg));
</pre></h3>
<h1>Description</h1>
When an error occurs in the Berkeley DB library, an exception is thrown or an
error return value is returned by the method. In some cases,
however, the <b>errno</b> value may be insufficient to completely
describe the cause of the error, especially during initial application
debugging.
<p>The DbEnv::set_errcall and <a href="../api_cxx/db_set_errcall.html">Db::set_errcall</a> methods are used to
enhance the mechanism for reporting error messages to the application.
In some cases, when an error occurs, Berkeley DB will call
<b>db_errcall_fcn</b> with additional error information. The function
must be defined with two arguments; the first will be the prefix string
(as previously set by <a href="../api_cxx/db_set_errpfx.html">Db::set_errpfx</a> or <a href="../api_cxx/env_set_errpfx.html">DbEnv::set_errpfx</a>);
the second will be the error message string. It is up to the
<b>db_errcall_fcn</b> method to display the error message in an
appropriate manner.
<p>Alternatively, you can use the <a href="../api_cxx/env_set_error_stream.html">DbEnv::set_error_stream</a> and
<a href="../api_cxx/db_set_error_stream.html">Db::set_error_stream</a> methods to display the additional information via
an output stream, or the <a href="../api_cxx/db_set_errfile.html">Db::set_errfile</a> or
<a href="../api_cxx/env_set_errfile.html">DbEnv::set_errfile</a> methods to display the additional information via a C
library FILE *. You should not mix these approaches.
<p>This error-logging enhancement does not slow performance or significantly
increase application size, and may be run during normal operation as well
as during application debugging.
<p>The DbEnv::set_errcall interface may be called at any time during the life of
the application.
<h1>Class</h1>
<a href="../api_cxx/env_class.html">DbEnv</a>
<h1>See Also</h1>
<a href="../api_cxx/env_list.html">Database Environments and Related Methods</a>
</tt>
<table width="100%"><tr><td><br></td><td align=right>
<a href="../api_cxx/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../reftoc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
|