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


#include <db.h>

int DB->sync(DB *db, u_int32_t flags);


The DB->sync function flushes any cached information to disk.

If the database is in memory only, the DB->sync function has no effect and will always succeed.

The flags parameter is currently unused, and must be set to 0.

See DB->close for a discussion of Berkeley DB and cached data.

The DB->sync function returns the value of errno on failure, and 0 on success.


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

The DB->sync function may fail and return errno for any of the errors specified for the following Berkeley DB and C library functions: DB->cursor, DB->get, DB->sync, DBcursor->c_close(3), __account_page(3), close(3), dbenv->db_paniccall(3), fcntl(3), fflush(3), fprintf(3), free(3), func(3), lock_get, lock_put, lock_vec, log_put, malloc(3), memcpy(3), memmove(3), memp_fget, memp_fput, memp_fset, memp_fsync, memset(3), munmap(3), open(3), realloc(3), sigfillset(3), sigprocmask(3), strerror(3), unlink(3), vfprintf(3), vsnprintf(3), and write(3).

In addition, the DB->sync function may fail and return errno for the following conditions:

An invalid flag value or parameter was specified.

See Also

db_appexit, db_appinit, db_version, DB->close, DB->cursor, DB->del, DB->fd, DB->get, DB->join, db_open, DB->put, DB->stat, DB->sync, DBcursor->c_close, DBcursor->c_del, DBcursor->c_get and DBcursor->c_put.