Previously I was using OpenLDAP 2.1.x and 2.2.x with ldbm backend.
I never had problems with it.
As I've read on the list that ldbm support will be dropped in the next
major version of OpenLDAP, and bdb is the recommended backend, I decided
to deploy a couple of new OpenLDAP servers with bdb backend.
Unfortunately, the choice was a disaster - a couple of tests showed that
after powering off the server, OpenLDAP is not able to start anymore -
all I see in logs is a single message (loglevel 256):
bdb_db_open: unclean shutdown detected; attempting recovery.
And that's it, it never recovers.
I'm using a pretty old OpenLDAP version, 2.3.6, so my first guess is that
the problems are because of it, and I'm on my way to upgrade.
On the other hand, I didn't have problems with ldbm on 2.3.6, or on any
older OpenLDAP version, so can one conclude that ldbm is more reliable
and crash-resistant?
Will an upgrade to 2.3.24 solve my problems with bdb, or shall I revert
back to ldbm?
Performance is not an issue here, databases are relatively small.
What is important is the ability to survive unexpected system
crash/poweroff.