[Spambayes] Error from pop3proxy

Alan Campbell alan at mullen.demon.co.uk
Tue Sep 30 16:17:35 EDT 2003

Thanks for the quick reply.

Its OK, I am a porogrammer, so I do understand what multi-threading is.

I am using version 1.06a, which I downloaded a couple of weeks ago.  I
will try using a pickle.

Great product.  I am very impressed with it so far.

mailto:alan at mullen.demon.co.uk

-----Original Message-----
From: Skip Montanaro [mailto:skip at pobox.com] 
Sent: 30 September 2003 21:12
To: alan at mullen.demon.co.uk
Cc: spambayes at python.org; spambayes-dev at python.org
Subject: Re: [Spambayes] Error from pop3proxy

    Alan> I got this error from pop3proxy running on my W2K server :-

    Alan> error: uncaptured python exception, closing channel
    Alan> <sb_smtpproxy.BayesSMTPProxy connected at
    Alan> 0x1833aa8> (bsddb._db.DBRunRecoveryError:(-3098 2,
    Alan> 'DB_RUNRECOVERY: Fatal error, run database recovery -- fatal
    Alan> region error detected; run recovery')

A number of people have seen this.  It appears to be related to
incorrect locking of the database in multi-threaded applications.  If
you're not a programmer that may not make sense to you.  The simplest
way to work around that may be to switch to the Pickle form of the
database.  However, before attempting that switch, let us know what
version of SpamBayes you are running.  Some bugs in the configuration
saving code were fixed only recently.  Tony's the expert in this area.

For the spambayes-dev folks: If we're not properly mediating access to
the on-disk version of the DBDictClassifier, we're probably not
mediating access to the in-memory PickledClassifier either.  Maybe all
we need to do is add a little bit of locking to the Classifier class or
its subclasses.


More information about the Spambayes mailing list