mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-24 13:24:56 +08:00
Add MDB_NORDLOCK to omit all reader table usage
Calling app wants to manage its own locking.
This commit is contained in:
parent
e3f6c152c5
commit
f739940547
@ -269,6 +269,8 @@ typedef void (MDB_rel_func)(MDB_val *item, void *oldptr, void *newptr, void *rel
|
||||
#define MDB_MAPASYNC 0x100000
|
||||
/** tie reader locktable slots to #MDB_txn objects instead of to threads */
|
||||
#define MDB_NOTLS 0x200000
|
||||
/** don't use reader locktable at all, caller must manage read/write concurrency */
|
||||
#define MDB_NORDLOCK 0x400000
|
||||
/** @} */
|
||||
|
||||
/** @defgroup mdb_dbi_open Database Flags
|
||||
|
@ -3983,7 +3983,7 @@ mdb_env_open(MDB_env *env, const char *path, unsigned int flags, mdb_mode_t mode
|
||||
goto leave;
|
||||
}
|
||||
|
||||
if (F_ISSET(flags, MDB_RDONLY)) {
|
||||
if ((flags & (MDB_RDONLY|MDB_NORDLOCK)) == MDB_RDONLY) {
|
||||
rc = mdb_env_setup_locks(env, lpath, mode, &excl);
|
||||
if (rc)
|
||||
goto leave;
|
||||
|
Loading…
Reference in New Issue
Block a user