Function lmdb_master_sys::mdb_env_sync
source · pub unsafe extern "C" fn mdb_env_sync(
env: *mut MDB_env,
force: c_int,
) -> c_int
Expand description
Flush the data buffers to disk.
Data is always written to disk when #mdb_txn_commit() is called, but the operating system may keep it buffered. LMDB always flushes the OS buffers upon commit as well, unless the environment was opened with #MDB_NOSYNC or in part #MDB_NOMETASYNC. This call is not valid if the environment was opened with #MDB_RDONLY.
§Arguments
env
(direction in) - An environment handle returned by #mdb_env_create()force
(direction in) - If non-zero, force a synchronous flush. Otherwise if the environment has the #MDB_NOSYNC flag set the flushes will be omitted, and with #MDB_MAPASYNC they will be asynchronous.
§Returns
A non-zero error value on failure and 0 on success. Some possible errors are:
- EACCES - the environment is read-only.
- EINVAL - an invalid parameter was specified.
- EIO - an error occurred during synchronization.