https://bugs.openldap.org/show_bug.cgi?id=10005
Issue ID: 10005 Summary: Fix flags not getting committed when using named dbs in lmdb Product: LMDB Version: 0.9.29 Hardware: All OS: All Status: UNCONFIRMED Keywords: needs_review Severity: normal Priority: --- Component: liblmdb Assignee: bugs@openldap.org Reporter: mega.alpha100@gmail.com Target Milestone: ---
This addition is simply a replication of some logic already in lmdb's repo to ensure flags are saved when using named db, like is already done for the main/unamed db
This is a link to the requested fix https://github.com/Ultra-Code/lmdb/commit/ce001a311d8fb16afbf13df2a1e21d505c...
https://bugs.openldap.org/show_bug.cgi?id=10005
Howard Chu hyc@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED
--- Comment #1 from Howard Chu hyc@openldap.org --- Named DB persistent flags are set at creation time and can never be changed. The special logic for the main DB is required because it always exists therefore you never have the opportunity to create it with desired flags.
https://bugs.openldap.org/show_bug.cgi?id=10005
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|needs_review | Status|RESOLVED |VERIFIED
https://bugs.openldap.org/show_bug.cgi?id=10005
--- Comment #2 from mega.alpha100@gmail.com --- Hmmm Okay,Let me explain my problem. The problem I was having was that: when I opened a named db fn mdb_dbi_open in the environment with a specified set of flags, I wansn't getting back that same set of flags I used to open the db when I called fn mdb_dbi_flags.
That's what lead me to read lmdb's code and found that snippet which worked for making the flags I used to open the db persist so that they are the same I get when I call mdb_dbi_flags.
So if my method is wrong, how do I get mdb_dbi_flags to give me the correct flags I used to open the db(when I was opening it)?
https://bugs.openldap.org/show_bug.cgi?id=10005
--- Comment #3 from Howard Chu hyc@openldap.org --- The persistent flags you specified when the DB was created are stored in the DB record and retrieved when the DB is opened. Flags specified to mdb_dbi_open at any other time are ignored.
This ticket is closed. For further discussion of how LMDB works, use the openldap-technical mailing list.