[Spambayes] Cannot teach Spambayes, DB _RUNRECOVERY: Fatalerror,run database recovery -- fatal region error detected; run recovery'

Tony Meyer tameyer at ihug.co.nz
Sun Jul 4 08:14:42 CEST 2004

> I re-read the FAQ's right after I posted
> my message and saw that the subject had already been covered. 
> Now I feel like a fool for bothering you about something you
> already covered.

Don't worry about it :)

> I set up a rule in Outlook to automatically forward any mail 
> received by these accounts back to the Spambayes server to be
> trained as spam.
> Sort of an "auto-teach" function, as all the email to these 
> accounts was spam anyway, why not have them do something useful.
> It was a short time after that that the problem occurred.

If this is happening while the database is being used by something else (an
open copy of Outlook, for example), it will almost certainly cause problems.
Neither the bsddb or pickle storage options can handle concurrent access.
The two SQL options might, but are rarely used (AFAIK), and I don't know for
sure.  Hopefully this will be addressed when we manage to find a better
underlying database option.

> I tried to change to a pickle on the earlier version, but kept getting
> errors.  I don't really understand pickles.  I might try 
> doing that again.

This might have been because there was already a non-pickle database there.
Try changing but deleting the existing database files before you open up
Outlook and see if that works.  Note that with a pickle you won't get the
database corruption, but concurrency won't work as expected either.  Each
process accessing the db keeps it in memory and saves it to disk as
necessary - so if two processes have it open, then the version on disk will
be the same as whoever saved last, not the same as both.

=Tony Meyer

Please always include the list (spambayes at python.org) in your replies
(reply-all), and please don't send me personal mail about SpamBayes. This
way, you get everyone's help, and avoid a lack of replies when I'm busy.

More information about the Spambayes mailing list