A sidenote: I've built more or less the same Apache as a prefork MPM, and I'm not seeing any SEGVs any more.
On the other hand, performance isn't what you'd call great, as access to the database is effectively serialized. Thirty queries will take thirty seconds, regardless of concurrency level. This may have been a bit faster in the worker MPM. (But only due to the SEGVs, unfortunately, which came across pretty good, performance-wise.) I think a single-process, multi-threaded approach (as in Java) will work best for Berkeley DB. Michael Ludwig