http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4416
------- Additional Comments From [EMAIL PROTECTED] 2008-01-24 09:59 ------- > I was thinking of making a new BerkeleyDB BayesStore module, > as opposed to making DBM more complicated than it already is. That would be nice (although I've given up the use of bdb for Bayes and AWL in favour of SQL a long time ago - it was causing too much maintenance trouble and slowness when database grow very large). I'm using bdb databases in amavisd-new since v2.0, July 2004, and doing it exclusively through a BerkeleyDB module with explicit subroutine calls, avoiding a hash tie in order to have full control on options and results of operations. Four databases are used: three hashes and one queue (SNMP-like stats counters, process status for each child process, a cache of recent results, and a queue for purging a cache). Fine-grained locking is used at a record level, using "Berkeley DB Concurrent Data Store" (cursors) for the purpose, so database is never locked globally. The bdb V3.1 or better is required, V4 is recommended. I'm quite happy with how BerkeleyDB has performed its task, and its keeping up with new versions of libdb. There were some quirks in the underlying libdb, but recent versions (4.3, 4.4, 4.5, 4.6) work very well for my purposes, even under heavy concurrent use. There were hardly any complaints about BerkeleyDB not being part of the Perl core modules. SpamAssassin and amavisd-new use plenty of non-core modules, so BerkeleyDB is just one more. ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.
