Sorry the mail before was not as plain text. Here again...
I am new to lmdb. I have been working with lmdb intensively for one month.
I really appreciate your great work. Good efficient C code is not always
Well I like to follow up on that reported issue.
I am using multiple databases on the same environment. I was a bit
confused about your statement that most application use never subDBs? I
think it is a great feature that helps to support multiple indexes.
I ran unintentionally into a related problem as I set the compare function
for the main db to an integer based one opposite to the literal compare
function which is the default. Therefore when opening a database by its
name the wrong database might be returned as the integer compare function
might think names are equal as only 96 bits (in my function) are compared.
So the compare function only compares the prefix of the database names!
Maybe the database meta should be kept in a private space. But I also
agree on your statement to keep things simple. I solved the problem by
never using the main db so under no circumstances the database meta is
corrupted. I think the price paid for having only named databases is very
cheap as I open databases at startup and keep the database index (dbi).
Rockethealth by Helmedica AG
Chief Technology Officer