Viewing file: log_put.html (3.92 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
Berkeley DB: DbEnv::log_put
DbEnv::log_put
|
 |
#include <db_cxx.h>
int
DbEnv::log_put(DbLsn *lsn, const Dbt *data, u_int32_t flags);
Description: DbEnv::log_put
The DbEnv::log_put method appends records to the log. The DbLsn of
the put record is returned in the lsn parameter.
The DbEnv::log_put method
either returns a non-zero error value
or throws an exception that encapsulates a non-zero error value on
failure, and returns 0 on success.
Parameters
- data
- The data parameter is the record to write to the log.
The caller is responsible for providing any necessary structure to
data. (For example, in a write-ahead logging protocol, the
application must understand what part of data is an operation
code, what part is redo information, and what part is undo information.
In addition, most transaction managers will store in data the
DbLsn of the previous log record for the same transaction, to
support chaining back through the transaction's log records during
undo.)
- flags
- The flags parameter must be set to 0 or
the following value:
- DB_FLUSH
- The log is forced to disk after this record is written, guaranteeing
that all records with DbLsn values less than or equal to the
one being "put" are on disk before DbEnv::log_put returns.
- lsn
- The lsn parameter references memory into which
the DbLsn of the put record is copied.
Errors
The DbEnv::log_flush method
may fail and throw
DbException,
encapsulating one of the following non-zero errors, or return one of
the following non-zero errors:
- EINVAL
- If the record to be logged is larger than the maximum log record; or if an
invalid flag value or parameter was specified.
Class
DbEnv, DbLogc, DbLsn
See Also
Logging Subsystem and Related Methods
Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.
|