You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by to...@absi.be on 2006/10/10 09:48:56 UTC

bayes corruption: 'no such file or directory'

Hi,

Since upgrading our mail relay to solaris 10 and all the latest gratest 
spamassassin / mimedefang / sendmail versions, i'm faced with curious 
bayes db corruption happening after approx. 1 day:

i've got these parameters set: in sa-mimedefang.cf:

use_bayes 1
bayes_auto_learn 1
bayes_path /var/spool/MIMEDefang-bayes/bayes
bayes_file_mode 0666
#auto_learn_threshold_nonspam 0.1
#auto_learn_threshold_spam 6
bayes_auto_expire 1
bayes_expiry_max_db_size 100000
#bayes_journal_min_size 10240
#bayes_journal_max 5120000
bayes_learn_to_journal 1
bayes_min_ham_num 100
bayes_min_spam_num 100
lock_method flock (I tried with commenting it out, same problem)

These never gave us problems on solaris9 / same setup (mimedefang / 
sendmail /spamassassin)


the sort of errors I am seeing are:


Oct  9 19:29:37 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 24 stderr: locker: safe_
lock: unlink of temp lock 
/var/spool/MIMEDefang-bayes/bayes.lock.mx1.vxxa.be.2101 failed: No such 
file
 or directory
Oct  9 19:29:37 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 24 stderr: bayes: cannot
 open bayes databases /var/spool/MIMEDefang-bayes/bayes_* R/W: lock 
failed: No such file or directory
Oct  9 19:29:37 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 25 stderr: Use of uninit
ialized value in numeric gt (>) at 
/usr/perl5/site_perl/5.8.4/Mail/SpamAssassin/Locker/UnixNFSSafe.pm
line 95.
Oct  9 20:46:30 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 23 stderr: locker: safe_
lock: unlink of temp lock 
/var/spool/MIMEDefang-bayes/bayes.lock.mx1.vxxa.be.2101 failed: No such 
file
 or directory
Oct  9 20:46:30 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 23 stderr: bayes: failed
 rename /var/spool/MIMEDefang-bayes/bayes_journal to 
/var/spool/MIMEDefang-bayes/bayes_journal.old

etc.

right now, the only errors i am seeing are:

Oct 10 09:37:38 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 5 stderr: bayes: cannot open bayes databases 
/var/spool/MIMEDefang-bayes/bayes_* R/O: tie failed: No such file or 
directory
Oct 10 09:37:38 mx1 mimedefang-multiplexor[2101]: [ID 980602 mail.info] 
Slave 8 stderr: bayes: cannot open bayes databases 
/var/spool/MIMEDefang-bayes/bayes_* R/W: tie failed: No such file or 
directory

This is the contents of the bayes directory:

-bash-3.00# ls -la /var/spool/MIMEDefang-bayes/
total 37588
drwxr-xr-x   2 defang   defang       512 Oct 10 09:38 .
drwxr-xr-x  15 root     bin          512 Sep 19 07:55 ..
-rw-rw-rw-   1 defang   defang    114608 Oct 10 04:56 bayes_journal
-rw-rw-rw-   1 defang   defang   2613248 Oct 10 05:08 bayes_seen
-rw-rw-rw-   1 defang   defang   20946944 Oct 10 09:38 bayes_toks


Does anyone use an sql backend instead of the berkely flat file db ? Is it 
faster / slower ?
thanks for your input, i'd really appreciate it because no bayes is bad, 
lots of spam gets through...


tom.


Re: bayes corruption: 'no such file or directory'

Posted by Matt Kettler <mk...@verizon.net>.
tomvo@absi.be wrote:
> Hi,
>
> Since upgrading our mail relay to solaris 10 and all the latest gratest 
> spamassassin / mimedefang / sendmail versions, i'm faced with curious 
> bayes db corruption happening after approx. 1 day:
>
> i've got these parameters set: in sa-mimedefang.cf:
>
> use_bayes 1
> bayes_auto_learn 1
> bayes_path /var/spool/MIMEDefang-bayes/bayes
> bayes_file_mode 0666
>   
You want 0777, not 0666 here. This can be used to create directories and
SA needs the "x" bit on those. Also, this isn't really a mode specifier,
it's a mask, so the database files themselves will still be created 666.

(Check the docs, note the default is 0700 not 0600.)
>
> This is the contents of the bayes directory:
>
> -bash-3.00# ls -la /var/spool/MIMEDefang-bayes/
> total 37588
> drwxr-xr-x   2 defang   defang       512 Oct 10 09:38 .
> drwxr-xr-x  15 root     bin          512 Sep 19 07:55 ..
> -rw-rw-rw-   1 defang   defang    114608 Oct 10 04:56 bayes_journal
> -rw-rw-rw-   1 defang   defang   2613248 Oct 10 05:08 bayes_seen
> -rw-rw-rw-   1 defang   defang   20946944 Oct 10 09:38 bayes_toks
>   
Your problem appears to be that the MIMEDefang-bayes directory is 755
permisions, not 777.

>
> Does anyone use an sql backend instead of the berkely flat file db ? Is it 
> faster / slower ?
>   
The SQL backend is significantly faster.

http://wiki.apache.org/spamassassin/BayesBenchmarkResults

Note that SDBM is also faster than berkely, and I use that myself. My
only problem with it was some minor issues with the dump/restore process
that forced me to rename a file to make it work properly.