svn commit: r1928729 - apr/apr/trunk/dbm
[email protected] Wed, 24 Sep 2025 09:10:30 -0000
| Newsgroups | gmane.comp.apache.apr.cvs |
|---|---|
| Message-ID | <175870503045.2910229.14261357195453918540@svn02-us-east.apache.org> |
Author: jfclere
Date: Wed Sep 24 09:10:29 2025
New Revision: 1928729
Log:
Arrange lmdb logic: htdbm -x wasn't working because the database was MDB_RDONLY.
Additionally add comments in the code.
Modified:
apr/apr/trunk/dbm/apr_dbm_lmdb.c
Modified: apr/apr/trunk/dbm/apr_dbm_lmdb.c
==============================================================================
--- apr/apr/trunk/dbm/apr_dbm_lmdb.c Wed Sep 24 09:03:41 2025 (r1928728)
+++ apr/apr/trunk/dbm/apr_dbm_lmdb.c Wed Sep 24 09:10:29 2025 (r1928729)
@@ -42,8 +42,6 @@ typedef struct {
#define APR_DBM_LMDBMODE_RO MDB_RDONLY
#define APR_DBM_LMDBMODE_RWCREATE MDB_CREATE
-#define APR_DBM_LMDBMODE_RW (MDB_RDONLY + MDB_CREATE + 1)
-#define APR_DBM_LMDBMODE_RWTRUNC (APR_DBM_LMDBMODE_RW + 1)
/* --------------------------------------------------------------------------
**
@@ -99,13 +97,13 @@ static apr_status_t vt_lmdb_open(apr_dbm
dbmode = APR_DBM_LMDBMODE_RO;
break;
case APR_DBM_READWRITE:
- dbmode = APR_DBM_LMDBMODE_RW;
+ dbmode = 0;
break;
case APR_DBM_RWCREATE:
dbi_open_flags = APR_DBM_LMDBMODE_RWCREATE;
break;
case APR_DBM_RWTRUNC:
- truncate = APR_DBM_LMDBMODE_RWTRUNC;
+ truncate = 1;
break;
default:
return APR_EINVAL;
@@ -125,14 +123,17 @@ static apr_status_t vt_lmdb_open(apr_dbm
}
if (dberr == 0) {
+ /* we pass MDB_RDONLY and the default */
dberr = mdb_env_open(file.env, pathname, dbmode | DEFAULT_ENV_FLAGS, apr_posix_perms2mode(perm));
}
if (dberr == 0) {
+ /* we pass MDB_RDONLY */
dberr = mdb_txn_begin(file.env, NULL, dbmode, &file.txn);
}
if (dberr == 0) {
+ /* we pass the DB_CREATE */
dberr = mdb_dbi_open(file.txn, NULL, dbi_open_flags, &file.dbi);
/* if mode == APR_DBM_RWTRUNC, drop database */