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

bdb corruption

Greets all,

I've got a bit of a problem. I'm using OpenLDAP in a high volume environment using the berkeley DB back end, and what's happening is that every few days the database gets corrupted. Searches take excrutiatingly long to complete. Sometimes I'm able to do a slapcat (even though it takes forever, only a few entries a second) and rebuild the ldap database with that, other times it can get so bad, that even the slapcat fails (hangs with no more output half way through an entry) and I have to restore from backup and the replication log.

I'm capable of reproducing the problem fairly easily, I just run a couple copies of a script I wrote that just keeps doing searches, adds, modifies and deletes randomly over and over again. Within 5 minutes, the test ldap server is hosed. I've tried this with sleepycat bdb 4.1.25 and openldap 2.1.22 and 2.1.23 on linux and solaris, all with the same results.

Simply restarting the server has no effect, the database has to be rebuilt.

I've tried using LDBM, but it's concurrency ability sucks (modifies, other searches, etc are blocked while someone else is doing a complex search.)

Has anyone else ran into this? Is there another berkeley db implementation aside from sleepycat's? Any other suggestions, other back ends that I can use?