#include <db_cxx.h>

void Db::set_error_stream(class ostream*); 

When an error occurs in the Berkeley DB library, an exception is thrown or an errno value is returned by the interface. In some cases, however, the errno value may be insufficient to completely describe the cause of the error, especially during initial application debugging.

The DbEnv::set_error_stream() and Db::set_error_stream() methods are used to enhance the mechanism for reporting error messages to the application by setting the C++ ostream used for displaying additional Berkeley DB error messages. In some cases, when an error occurs, Berkeley DB will output an additional error message to the specified stream.

The error message will consist of the prefix string and a colon (":") (if a prefix string was previously specified using Db::set_errpfx(), an error string, and a trailing <newline> character.

Setting stream to NULL unconfigures the interface.

Alternatively, you can use the DbEnv::set_errfile() or Db::set_errfile() methods to display the additional information via a C Library FILE *, or the DbEnv::set_errcall() and Db::set_errcall() methods to capture the additional error information in a way that does not use either output streams or C Library FILE *'s. You should not mix these approaches.

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.

For Db handles opened inside of Berkeley DB environments, calling the Db::set_error_stream() method affects the entire environment and is equivalent to calling the DbEnv::set_error_stream() method.

The Db::set_error_stream() method may be called at any time during the life of the application.



The stream parameter is the application-specified output stream to be used for additional error information.



See Also

Database and Related Methods