Function lmdb_master_sys::mdb_env_copy2
source · pub unsafe extern "C" fn mdb_env_copy2(
env: *mut MDB_env,
path: *const c_char,
flags: c_uint,
) -> c_int
Expand description
Copy an LMDB environment to the specified path, with options.
This function may be used to make a backup of an existing environment. No lockfile is created, since it gets recreated at need.
Note: This call can trigger significant file size growth if run in parallel with write transactions, because it employs a read-only transaction. See long-lived transactions under caveats_sec.
§Arguments
env
(direction in) - An environment handle returned by #mdb_env_create(). It must have already been opened successfully.path
(direction in) - The directory in which the copy will reside. This directory must already exist and be writable but must otherwise be empty.flags
(direction in) - Special options for this operation. This parameter must be set to 0 or by bitwise OR’ing together one or more of the values described here.
- #MDB_CP_COMPACT - Perform compaction while copying: omit free pages and sequentially renumber all pages in output. This option consumes more CPU and runs more slowly than the default. Currently it fails if the environment has suffered a page leak.
A non-zero error value on failure and 0 on success.