mdb - LMDB API
Contents
Data Structure Documentation
Detailed Description
OpenLDAP Lightning Memory-Mapped Database Manager.
Name
mdb - LMDB API
- OpenLDAP Lightning Memory-Mapped Database Manager.
Struct Mdb_Val
Generic structure used for passing keys and data in and out of the database.
Values returned from the database are valid only until a subsequent update operation, or the end of the
transaction. Do not modify or free them, they commonly point into the database itself.
Key sizes must be between 1 and mdb_env_get_maxkeysize() inclusive. The same applies to data sizes in
databases with the MDB_DUPSORT flag. Other data items can in theory be from 0 to 0xffffffff bytes long.
DataFields
size_t mv_size
void * mv_dataSynopsis
ModulesVersionMacrosEnvironmentFlagsDatabaseFlagsWriteFlagsDataStructures
struct MDB_val
Generic structure used for passing keys and data in and out of the database.
Typedefs
typedef unsigned int MDB_dbi
A handle for an individual database in the DB environment.
typedef int() MDB_cmp_func(const MDB_val *a, const MDB_val *b)
A callback function used to compare two keys in a database.
typedef void() MDB_rel_func(MDB_val *item, void *oldptr, void *newptr, void *relctx)
A callback function used to relocate a position-dependent data item in a fixed-address database.
Typedef Documentation
typedefvoid()MDB_rel_func(MDB_val*item,void*oldptr,void*newptr,void*relctx)
A callback function used to relocate a position-dependent data item in a fixed-address database. The
newptr gives the item's desired address in the memory map, and oldptr gives its previous address. The
item's actual data resides at the address in item. This callback is expected to walk through the fields
of the record in item and modify any values based at the oldptr address to be relative to the newptr
address.
Parametersitem The item that is to be relocated.
oldptr The previous address.
newptr The new address to relocate to.
relctx An application-provided context, set by mdb_set_relctx().
Todo
This feature is currently unimplemented.
