[Spambayes] SMTPProxy [Was Training]

Barry A. Warsaw barry at python.org
Mon Feb 24 21:05:00 EST 2003


>>>>> "MH" == Mark Hammond <mhammond at skippinet.com.au> writes:

    MH> * Is there some reason you believe the new bsddb can not be
    MH> reliably used by multiple processes?  The only time I can see
    MH> a problem is when one of the processes is doing a full
    MH> retrain.  Even if one process was "untraining" while another
    MH> was training, I don't see a real problem.

I've been prototyping some Mailman code that backs the member database
to a bsddb database (either bsddb3 for Python 2.x or bsddb for Python
2.3).  The trickiest part for me was getting things to play nice with
multiple processes, especially in the environment initialization
code.  What ended up working for me was to "join" an existing
environment if the directory existed, otherwise create it the first
time.  I had too many deadlock problems when always creating the
database even when db_deadlock gave no indication of problems.

Once I solved that, it /appears/ to be reliable.  That, and my
experience with the BerkeleyDB based ZODB storages (which have
different locking constraints and no multiprocess access), leads me to
feel pretty confident about bsddb.

-Barry



More information about the Spambayes mailing list