Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Tero Saarni
OpenLDAP
Commits
9e5d759a
Commit
9e5d759a
authored
Jul 23, 2020
by
Quanah Gibson-Mount
Browse files
Merge remote-tracking branch 'origin/mdb.RE/0.9' into OPENLDAP_REL_ENG_2_4
parents
564f8d18
f681a076
Changes
2
Hide whitespace changes
Inline
Side-by-side
libraries/liblmdb/CHANGES
View file @
9e5d759a
LMDB 0.9 Change Log
LMDB 0.9.26 Engineering
LMDB 0.9.25 Release (2020/01/30)
ITS#9068 fix mdb_dump/load backslashes in printable content
ITS#9118 add MAP_NOSYNC for FreeBSD
...
...
libraries/liblmdb/mdb.c
View file @
9e5d759a
...
...
@@ -124,7 +124,10 @@ typedef SSIZE_T ssize_t;
#include
<resolv.h>
/* defines BYTE_ORDER on HPUX and Solaris */
#endif
#if defined(__APPLE__) || defined (BSD) || defined(__FreeBSD_kernel__)
#if defined(__FreeBSD__) && defined(__FreeBSD_version) && __FreeBSD_version >= 1100110
# define MDB_USE_POSIX_MUTEX 1
# define MDB_USE_ROBUST 1
#elif defined(__APPLE__) || defined (BSD) || defined(__FreeBSD_kernel__)
# define MDB_USE_POSIX_SEM 1
# define MDB_FDATASYNC fsync
#elif defined(ANDROID)
...
...
@@ -1375,7 +1378,7 @@ static int mdb_page_split(MDB_cursor *mc, MDB_val *newkey, MDB_val *newdata,
static
int
mdb_env_read_header
(
MDB_env
*
env
,
MDB_meta
*
meta
);
static
MDB_meta
*
mdb_env_pick_meta
(
const
MDB_env
*
env
);
static
int
mdb_env_write_meta
(
MDB_txn
*
txn
);
#ifdef
MDB_USE_POSIX_MUTEX
/* Drop unused excl arg */
#if
def
ined(
MDB_USE_POSIX_MUTEX
) && !defined(MDB_ROBUST_SUPPORTED)
/* Drop unused excl arg */
# define mdb_env_close0(env, excl) mdb_env_close1(env)
#endif
static
void
mdb_env_close0
(
MDB_env
*
env
,
int
excl
);
...
...
@@ -5133,6 +5136,17 @@ mdb_env_close0(MDB_env *env, int excl)
sem_unlink
(
env
->
me_txns
->
mti_wmname
);
}
}
#elif defined(MDB_ROBUST_SUPPORTED)
/* If we have the filelock: If we are the
* only remaining user, clean up robust
* mutexes.
*/
if
(
excl
==
0
)
mdb_env_excl_lock
(
env
,
&
excl
);
if
(
excl
>
0
)
{
pthread_mutex_destroy
(
env
->
me_txns
->
mti_rmutex
);
pthread_mutex_destroy
(
env
->
me_txns
->
mti_wmutex
);
}
#endif
munmap
((
void
*
)
env
->
me_txns
,
(
env
->
me_maxreaders
-
1
)
*
sizeof
(
MDB_reader
)
+
sizeof
(
MDB_txninfo
));
}
...
...
@@ -6785,7 +6799,7 @@ more:
offset
*=
4
;
/* space for 4 more */
break
;
}
/* FALLTHRU
:
Big enough MDB_DUPFIXED sub-page */
/* FALLTHRU
*/
/*
Big enough MDB_DUPFIXED sub-page */
case
MDB_CURRENT
:
fp
->
mp_flags
|=
P_DIRTY
;
COPY_PGNO
(
fp
->
mp_pgno
,
mp
->
mp_pgno
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment