[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: bdb backend - reliable or not?

Tomasz Chmielewski wrote:
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.

As others have mentioned, you need to run `db_recover` on your database.

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?

More crash-resistant? Probably. BDB has a lot of performance features, some of which make it more fragile to system instability. I think you will find that almost all "decent" databases, and many other applications including the file system itself, have problems with unclean shutdowns.

Will an upgrade to 2.3.24 solve my problems with bdb, or shall I revert back to ldbm?

Don't use ldbm, unless you have a powerful server and a small number of users; and don't mind getting left out of future releases.

Performance is not an issue here, databases are relatively small.
What is important is the ability to survive unexpected system crash/poweroff.

Then put the db_recover command in your start-up script, and/or tune BDB so that it can survive a crash more easily. But if you are experiencing unexpected crash/poweroff I'd say you have more serious issues than whether to use ldbm or bdb.

Perfection is just a word I use occasionally with mustard.
--Atom Powers--
Systems Administrator
DigiPen Institute of Technology
(425) 895-4443