You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Matias Lopez Bergero <ml...@udesa.edu.ar> on 2005/02/08 20:37:50 UTC

bayes db version error

Hi

I'm seeing a lot of messages about and version error in the bayes db in 
my log file:

spamd[6562]: bayes: bayes db version 0 is not able to be used, aborting! 
at /usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/BayesStore/DBM.pm 
line 160.

I'm using SA 3.0.2.
The output of sa-learn show a bayes db version 3.

sa-learn --dump magic | grep version
0.000          0          3          0  non-token data: bayes db version

This is correct? The reported error it's about version 0.

I have read trough the list that this problem is caused by the update of 
the spamassassin version.

I start with the SA version 2.55 that was carried default with the 
distro. Then upgrade to 3.0.1 or 3.0.0, so 3.0.1 and now 3.0.2. Maybe 
soon 3.0.3? ;)

There is a way to correct this problem? I was thinking in delete the old 
db, but I'm not very sure where to look. I not use the 2.55 version of 
SA, it was installed with the distro and I upgrade immediately after 
install. I looked at /root/.spamassassin for old files but found 
nothing. Where else this old db could be??

Could this be affecting the spam filtering?

BR,
Matías.


Re: bayes db version error

Posted by Matias Lopez Bergero <ml...@udesa.edu.ar>.
Michael Parker wrote:
> On Tue, Feb 08, 2005 at 05:28:51PM -0300, Matias Lopez Bergero wrote:
> 
>>>2) Throttle the calls to spamd to reduce lock contention.
>>
>>Sorry to ask this again, but I'm not native English speaker :-P
>>Did you mean to increase the number of spamd children processes, like 
>>spamd -m x? I have currently set spamd -m 10.
>>
> 
> No, it means to slow/reduce the calls to spamd.  Increasing the number
> of children will probably make the problem get worse.

OK, I'm using milter-spamc to talk with sendmail milter and pass the 
messages to spamd. For what I know, there is no way to control the calls 
to spamd from the milter-spamc command.
I would have to reduce the spamd child processes or increase the milter 
timeout in order to reduce the calls to spamd right?

>>>3) Switch to SQL based bayes which won't (well shouldn't) have that
>>>  issue.
>>
>>That's an interesting idea.
>>I'm going to keep that in mind :)
> 
> You can view the notes/slides from my ApacheCon presentation on
> Storing SpamAssassin User Data in SQL Databases here:
> http://www.apache.org/~parker/presentations/
> 
> Hopefully it will help move things along.

That's good,
Thank you very much Michael.

BR,
Matías.


Re: bayes db version error

Posted by Michael Parker <pa...@pobox.com>.
On Tue, Feb 08, 2005 at 05:28:51PM -0300, Matias Lopez Bergero wrote:
> 
> >2) Throttle the calls to spamd to reduce lock contention.
> 
> Sorry to ask this again, but I'm not native English speaker :-P
> Did you mean to increase the number of spamd children processes, like 
> spamd -m x? I have currently set spamd -m 10.
> 

No, it means to slow/reduce the calls to spamd.  Increasing the number
of children will probably make the problem get worse.

> 
> >3) Switch to SQL based bayes which won't (well shouldn't) have that
> >   issue.
> 
> That's an interesting idea.
> I'm going to keep that in mind :)

You can view the notes/slides from my ApacheCon presentation on
Storing SpamAssassin User Data in SQL Databases here:
http://www.apache.org/~parker/presentations/

Hopefully it will help move things along.

Michael

Re: bayes db version error

Posted by Matias Lopez Bergero <ml...@udesa.edu.ar>.
Michael Parker wrote:
> On Tue, Feb 08, 2005 at 04:37:50PM -0300, Matias Lopez Bergero wrote:
> 
>>I'm seeing a lot of messages about and version error in the bayes db in 
>>my log file:
>>
>>spamd[6562]: bayes: bayes db version 0 is not able to be used, aborting! 
>>at /usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/BayesStore/DBM.pm 
>>line 160.
>>
> 
> 
> I'm assuming you're running sitewide bayes (or at least running as a
> single user) and on a somewhat busy server.

Yes, I forgot to say that. I'm running a sitewide install with about 
60000 incoming messages per day.

> That error message is a pretty good indication that SA couldn't get a
> lock on the bayes db files.  It's actually just a warning, not an
> error, and it may or may not have actually aborted.
> 
> You'll see this on a setup that is getting a good amount of traffic
> and using shared/sitewide bayes db files.
> 
> Several things you can try:
> 
> 1) If you db files aren't on an NFS filesystem switch your lock_method
>    to flock (the default is nfssafe).  If your shared db files are on
>    an NFS filesystem then consider moving them off and switch your
>    lock_method.

Done.

> 2) Throttle the calls to spamd to reduce lock contention.

Sorry to ask this again, but I'm not native English speaker :-P
Did you mean to increase the number of spamd children processes, like 
spamd -m x? I have currently set spamd -m 10.


> 3) Switch to SQL based bayes which won't (well shouldn't) have that
>    issue.

That's an interesting idea.
I'm going to keep that in mind :)

Thanks a lot Michael

BR,
Matías.


Re: bayes db version error

Posted by Michael Parker <pa...@pobox.com>.
On Tue, Feb 08, 2005 at 04:37:50PM -0300, Matias Lopez Bergero wrote:
> I'm seeing a lot of messages about and version error in the bayes db in 
> my log file:
> 
> spamd[6562]: bayes: bayes db version 0 is not able to be used, aborting! 
> at /usr/lib/perl5/site_perl/5.8.0/Mail/SpamAssassin/BayesStore/DBM.pm 
> line 160.
> 

I'm assuming you're running sitewide bayes (or at least running as a
single user) and on a somewhat busy server.

That error message is a pretty good indication that SA couldn't get a
lock on the bayes db files.  It's actually just a warning, not an
error, and it may or may not have actually aborted.

You'll see this on a setup that is getting a good amount of traffic
and using shared/sitewide bayes db files.

Several things you can try:

1) If you db files aren't on an NFS filesystem switch your lock_method
   to flock (the default is nfssafe).  If your shared db files are on
   an NFS filesystem then consider moving them off and switch your
   lock_method.

2) Throttle the calls to spamd to reduce lock contention.

3) Switch to SQL based bayes which won't (well shouldn't) have that
   issue.

> 
> Could this be affecting the spam filtering?
> 

In theory, things should filter just fine, you just won't get BAYES
results.  If you're seeing something different then it's probably a
bug.

Michael