Berkeley DB: log_flush
Полезная информация


#include <db.h>

int log_flush(DB_LOG *logp, const DB_LSN *lsn);


The log_flush function guarantees that all log records whose DB_LSN values are less than or equal to the lsn argument have been written to disk. If lsn is NULL, all records in the log are flushed.

The log_flush function returns the value of errno on failure, and 0 on success.


If a fatal error occurs in Berkeley DB, the log_flush function may fail and return DB_RUNRECOVERY, at which point all subsequent database calls will also return DB_RUNRECOVERY.

The log_flush function may fail and return errno for any of the errors specified for the following Berkeley DB and C library functions: abort(3), close(3), dbenv->db_paniccall(3), fcntl(3), fflush(3), fprintf(3), free(3), fsync(3), getenv(3), getpid(3), getuid(3), isdigit(3), lseek(3), malloc(3), memcpy(3), memset(3), open(3), sigfillset(3), sigprocmask(3), snprintf(3), stat(3), strerror(3), strlen(3), unlink(3), vfprintf(3), vsnprintf(3), and write(3).

In addition, the log_flush function may fail and return errno for the following conditions:

An invalid flag value or parameter was specified.

See Also

log_archive, log_close, log_compare, log_file, log_flush, log_get, log_open, log_put, log_register, log_stat, log_unlink and log_unregister.