#include <db_cxx.h>

DbEnv::set_tx_timestamp(time_t *timestamp); 

Recover to the time specified by timestamp rather than to the most current possible date.

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() method configures operations performed using the specified DbEnv handle, not all operations performed on the underlying database environment.

The DbEnv::set_tx_timestamp() method may not be called after the DbEnv::open() method 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.



The timestamp parameter references the memory location where the recovery timestamp is located.

The timestamp parameter should be the number of seconds since 0 hours, 0 minutes, 0 seconds, January 1, 1970, Coordinated Universal Time; that is, the Epoch.


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


If it is not possible to recover to the specified time using the log files currently present in the environment; or if an invalid flag value or parameter was specified.


DbEnv, DbTxn

See Also

Transaction Subsystem and Related Methods