corrupted db files?
Fletcher Mattox
fletcher at cs.utexas.edu
Tue Dec 31 19:01:47 CET 2002
> Fletcher,
>
> There's definitely something wrong. A token's count should be less than
> the number of messages (MSG_COUNT) processed (if using the Robinson or
> Robinson-Fisher methods) or less than 4 times MSG_COUNT (if using Graham
> method).
I am using the default method (no config file), which I think is Robinson.
> Also, all calls to db_setvalue() check for negative values and
> replace them by 0. You should never see huge values like you're reporting.
Interestingly, bogofilter still works. Or at least is not badly broken.
I had run a week like this before I even noticed it.
> What version of bogofilter are you running? If not the latest stable
> version, i.e. 0.9.1.2, you should upgrade for all the newest features and
> the best code.
0.9.1.2,
> If you start with a fresh database can you reproduce the problem?
It has happened twice now. Both times took about a week to manifest.
I wonder if it's a file locking problem. I'm running on Solaris 7,
where read locking always fails:
cs.utexas.edu$ ./bogofilter -v -d . </etc/motd
[8096] [0] Faked blocking read lock on ./goodlist.db
[8096] [1] Faked nonblocking read lock on ./spamlist.db
X-Bogosity: No, tests=bogofilter, spamicity=0.000415, version=0.9.1.2
cs.utexas.edu$
I don't know why this happens (or if it's serious), but it appears
that fcntl() is returning EAGAIN. It does not happen under linux.
However, I don't see how failure of read locking could corrupt the db.
I have never noticed lock failure while writing to the database, but
I could easily have missed that.
More information about the Bogofilter
mailing list