DbEnv::txn_checkpoint()

#include <db_cxx.h>
 
int
DbEnv::txn_checkpoint(u_int32_t kbyte, u_int32_t min, 
                      u_int32_t flags) const;

If there has been any logging activity in the database environment since the last checkpoint, the DbEnv::txn_checkpoint() method flushes the underlying memory pool, writes a checkpoint record to the log, and then flushes the log.

The DbEnv::txn_checkpoint() method returns a non-zero error value on failure and 0 on success.

The DbEnv::txn_checkpoint() method is the underlying method used by the db_checkpoint utility. See the db_checkpoint utility source code for an example of using DbEnv::txn_checkpoint() in a IEEE/ANSI Std 1003.1 (POSIX) environment.

Parameters

kbyte

If the kbyte parameter is non-zero, a checkpoint will be done if more than kbyte kilobytes of log data have been written since the last checkpoint.

min

If the min parameter is non-zero, a checkpoint will be done if more than min minutes have passed since the last checkpoint.

flags

The flags parameter must be set to 0 or the following value:

  • DB_FORCE

    Force a checkpoint record, even if there has been no activity since the last checkpoint.

Errors

The DbEnv::txn_checkpoint() method may fail and throw a DbException exception, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

EINVAL

An invalid flag value or parameter was specified.

Class

DbEnv, DbTxn

See Also

Transaction Subsystem and Related Methods