Howard Chu writes:
The basic idea is to construct a database that is always mmap'd to a fixed virtual address, and which returns its mmap'd data pages directly to the caller (instead of copying them to a newly allocated buffer). Given a fixed address, it becomes feasible to make the on-disk record format identical to the in-memory format. (...)
One big problem, if I understand you correctly, is that a database accumulates the results bugs more efficiently than anything else. There's no layer between slapd and the disk database which may catch an error or fail before the error gets saved.
So if something does a wild pointer write which ends up in the database, it stays written. If something creates a wild pointer out from an entry in the database (ping ITS#5340), you've saved a "slapd will crash" state into the database itself. be_release() of the entry doesn't help, nor does stopping slapd. slapcat/slapadd might save you since it doesn't need the entire database, but it too is more fragile.