# DbEnv::set_tx_timestamp

`

###

    #include <db_cxx.h>

    int
    DbEnv::set_tx_timestamp(time_t *timestamp);

# Description

Recover to the time specified by timestamp rather than to the most current possible date. The timestamp argument should be the number of seconds since 0 hours, 0 minutes, 0 seconds, January 1, 1970, Coordinated Universal Time; that is, the Epoch.

Once a database environment has been upgraded to a new version of Berkeley DB involving a log format change (see Upgrading Berkeley DB installations), it is no longer possible to recover to a specific time before that upgrade.

The DbEnv::set_tx_timestamp interface may be used only to configure Berkeley DB before the DbEnv::open interface is called.

The DbEnv::set_tx_timestamp 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.

# Errors

The DbEnv::set_tx_timestamp method may fail and throw an exception or return a non-zero error for the following conditions:

EINVAL
  An invalid flag value or parameter was specified.

  It is not possible to recover to the specified time using the log files currently present in the environment.

The DbEnv::set_tx_timestamp method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods. If a catastrophic error has occurred, the DbEnv::set_tx_timestamp method may fail and either return DB_RUNRECOVERY or throw an exception encapsulating DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

# Class

DbEnv, DbTxn

# See Also

DbEnv::set_tx_max, DbEnv::set_tx_recover, DbEnv::set_tx_timestamp, DbTxn::abort, DbEnv::txn_begin, DbEnv::txn_checkpoint, DbTxn::commit, DbTxn::discard, DbTxn::id, DbTxn::prepare, DbEnv::txn_recover, DbTxn::set_timeout and DbEnv::txn_stat.`

Copyright Sleepycat Software