On Tue, 8 Jul 2014, Aaron Bennett wrote:
Jul 7 04:19:30 zoot slapd[15011]: bdb(dc=clarku,dc=edu): Lock table is out of available lock entries Jul 7 04:19:30 zoot slapd[15011]: => bdb_idl_insert_key: c_get failed: Cannot allocate memory (12)
[...]
That goes on, deleting things, until my pager exploded when some critical role accounts got nuked and our radius servers died. I pulled an LDIF when I realized what was happening and between 18:55 and 19:35, our LDIF went from 75MB to 45MB ? so about 30MB of stuff disappeared.
What happened? Did I get hit by an oddball BDB/Syncrepl behavior? Do I have a bad misconfiguration in my replication setup?
Usually what the syslogs say is right ... underconfigured re: number of locks. Check your DB_CONFIG, per http://www.openldap.org/faq/data/cache/893.html and the associated links. I suppose there's a potential argument to be made for "I wish it died fast instead of continued into a weird syncrepl state."
Other possibilities include a BDB bug, or perhaps you really were out of memory (but I'd also expect core portions of slapd and possibly other processes to be complaining in an OOM situation, which you didn't indicate in your report).
#include obligatory lmdb plug here (no need to play around with this stuff). This may help you justify the transition to management, if needed!