From 9f7ae8925fb896d7de9345ea441c5da3fce6670c Mon Sep 17 00:00:00 2001 From: Hallvard Furuseth Date: Fri, 4 Oct 2013 00:48:19 +0200 Subject: [PATCH] Add Caveat: Readers need write access. Whitespace. --- libraries/liblmdb/lmdb.h | 6 +++++- libraries/liblmdb/mdb.c | 2 +- libraries/liblmdb/mdb_stat.c | 2 +- libraries/liblmdb/midl.c | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/libraries/liblmdb/lmdb.h b/libraries/liblmdb/lmdb.h index 8cdac26b06..f6dfa60c38 100644 --- a/libraries/liblmdb/lmdb.h +++ b/libraries/liblmdb/lmdb.h @@ -66,6 +66,10 @@ * BSD systems or when otherwise configured with MDB_USE_POSIX_SEM. * Multiple users can cause startup to fail later, as noted above. * + * - There is normally no pure read-only mode, since readers need write + * access to locks and lock file. Exceptions: On read-only filesystems + * or with the #MDB_NOLOCK flag described under #mdb_env_open(). + * * - A thread can only use one transaction at a time, plus any child * transactions. Each transaction belongs to one thread. See below. * The #MDB_NOTLS flag changes this for read-only transactions. @@ -489,7 +493,7 @@ int mdb_env_create(MDB_env **env); * like wild pointer writes and other bad updates into the database. * Incompatible with nested transactions. * Processes with and without MDB_WRITEMAP on the same environment do - * not cooperate well. + * not cooperate well. *
  • #MDB_NOMETASYNC * Flush system buffers to disk only once per transaction, omit the * metadata flush. Defer that until the system flushes files to disk, diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c index 2f671ed0a1..d1cd8643fc 100644 --- a/libraries/liblmdb/mdb.c +++ b/libraries/liblmdb/mdb.c @@ -8258,7 +8258,7 @@ static int mdb_pid_insert(pid_t *ids, pid_t pid) return -1; } } - + if( val > 0 ) { ++cursor; } diff --git a/libraries/liblmdb/mdb_stat.c b/libraries/liblmdb/mdb_stat.c index aeb573a495..40bd4ccf1d 100644 --- a/libraries/liblmdb/mdb_stat.c +++ b/libraries/liblmdb/mdb_stat.c @@ -199,7 +199,7 @@ int main(int argc, char *argv[]) printf("mdb_open failed, error %d %s\n", rc, mdb_strerror(rc)); goto txn_abort; } - + rc = mdb_stat(txn, dbi, &mst); if (rc) { printf("mdb_stat failed, error %d %s\n", rc, mdb_strerror(rc)); diff --git a/libraries/liblmdb/midl.c b/libraries/liblmdb/midl.c index 0225af9584..5ee2129046 100644 --- a/libraries/liblmdb/midl.c +++ b/libraries/liblmdb/midl.c @@ -59,7 +59,7 @@ unsigned mdb_midl_search( MDB_IDL ids, MDB_ID id ) return cursor; } } - + if( val > 0 ) { ++cursor; } @@ -89,7 +89,7 @@ int mdb_midl_insert( MDB_IDL ids, MDB_ID id ) /* no room */ --ids[0]; return -2; - + } else { /* insert id */ for (i=ids[0]; i>x; i--) -- 2.39.5