Howard Chu mailto:hyc@symas.com laid ink upon scroll at Tuesday, March 13, 2007 12:55 PM:
It should, but if you don't have reasonable checkpoints set it may take a long time to flush the cache. If the system is actually shutting down, it may not wait long enough for slapd to finish.
Looks like it's my checkpoint directive. I have:
checkpoint 512 60
Something like 'checkpoint 256 5' seems safer, or should I aim lower still?
Note that DB_TXN_NOT_DURABLE should not be used on production servers. This flag was deleted in BDB 4.3 and later because it is inherently unsafe. (One of those "only use this if you know what you're doing" options that too frequently got used by people who shouldn't have...)
Sounds right :)
Was DB_TXN_NOT_DURABLE just renamed to DB_LOG_INMEMORY in 4.3 or is there more to it?
I understand the ideal solution is to log full transaction logs to disk and use db_archive to backup the old logs & related data but we didn't look into this in much detail as it was considered unnecessary. Obviously we're wrong about that but we can recover a failed system using one of 30 odd other identical replicas across the network or failing that rebuild from our authorative data sources relatively quickly so is it worthwhile using only auto-removed txn logs?
Thanks Mark