[Spambayes] Corrupt database

Tony Meyer tameyer at ihug.co.nz
Sat Jan 24 21:16:13 EST 2004


> I just saw a couple of spam mails pop up in my regular mail 
> boxes, and found this in the headers:
[...]
>   .DBRunRecoveryError: (-30982, 'DB_RUNRECOVERY: Fatal error, 
> run database recovery -- fatal region error detected; run recovery')
[...]
> Can anyone tell me
> 1) how my db got corrupted

Sadly, no.  This is a problem that we're aware of, but are having a lot of
trouble tracking down.  We have made some improvements since the last
release, so hopefully the next one (due soon) will either not have this
problem, or will at least experience it less frequently.

> 2) how I should run recovery

You can't, sorry.  It's an error message from the underlying bsddb database
system and refers to a recovery program that isn't any use in the way in
which we use it.  The 'solution' is to train from scratch.

> 4) which database is corrupted, because I have a 
> statistics_database.db 
> and a message_info_database.db

It could be either, since both use the same system.  The
message_info_database.db is the less important one (especially with
sb_server), so try deleting that first, and seeing if that solves the
problem.  If so, then all good, if not, you need to get rid of them both.

> 5) how I can prevent it happening again

The only certain way is to switch from using bsddb to a pickle instead (the
FAQ has details about the pros and cons and how to do this).  It *should* be
a fairly uncommon experience, though - and if you can reproduce it
regularly, we'd *love* to hear how.  Note that you can backup the databases
if you want to, and that SpamBayes should (re)learn very quickly.

=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