DB_ENV->set_tx_timestamp |
#include <db.h>int DB_ENV->set_tx_timestamp(DB_ENV *dbenv, time_t *timestamp);
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 DB_ENV->set_tx_timestamp method configures operations performed using the specified DB_ENV handle, not all operations performed on the underlying database environment.
The DB_ENV->set_tx_timestamp interface may not be called after the DB_ENV->open interface is called.
The DB_ENV->set_tx_timestamp method returns a non-zero error value on failure and 0 on success.
The DB_ENV->set_tx_timestamp method may fail and return a non-zero error for the following conditions:
It is not possible to recover to the specified time using the log files currently present in the environment.
The DB_ENV->set_tx_timestamp method may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. If a catastrophic error has occurred, the DB_ENV->set_tx_timestamp method may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.