Justin Mason wrote:
>> Update:
>> 
>> If I run
>> 
>> # su courier -c "/usr/perl5/bin/sa-learn --showdots --rebuild"
>> 
>> to rebuild the SA database, the "bayes_journal" file gets rotated/removed(?)
>> and I stop getting the "Failed to run BAYES_NN ... " error messages ...
>> 
>> ... for awhile.
>>
>> I thought that had fixed it, and that I had a corrupted database.  But
>> shortly thereafter (after a rash of errant TCP Wrappers error messages),
>> the "bayes_journal" file was back, and at some point, once again, the
>> "Failed to run BAYES_NN SpamAssassin test, skipping" error messages
>> started to recur.
> 
> Aha -- does SpamAssassin have write permission to the *directory*?
> /.spamassassin ?

Yup:

courierserver:1:239 [/var/spool/mqueue] # ls -ldg /.spamassassin
drwx------    2 courier      1024 Oct 31 12:13 /.spamassassin/

"spamd" is running as user "courier", and all the files in that
directory are owned by "courier" as well.

>> Currently my directory has:
>>
>> [/] # ls -lt /.spamassassin
>> total 6574
>> -rw-------    1 courier  courier     64951 Oct 30 09:53 bayes_journal
>> 
>> [...]
>>
>> The "bayes_journal" file is there again, and so far, the errors have not yet
>> recurred, after Yet Another "sa-learn --rebuild" run.  But I'm sure
>> it's just a matter of time.
>>
>> I'm really at a loss to understand what makes this error creep in at
>> some random point - and surely the error message is bogus?  The database(s)
>> is/are obviously writable - so why would it complain "No write permission
>> to ndbm file at /usr/perl5/site_perl/5.005/Mail/SpamAssassin/BayesStore.pm
>> line 933"?

I'm suspecting the "bayes_journal" file is involved now.  In BayesStore.pm,
I see code to sync the journal if it gets larger than "bayes_journal_max_size",
which appears to be specified as 100 Kbytes in Conf.pm.

My "bayes_journal" file isn't getting sync'ed!  I haven't changed
any setting (e.g., setting "bayes_journal_max_size" to "0"), but for
some reason, "bayes_journal" is growing without bound.  And, it seems,
once it gets past this magic 100 Kbyte limit, the "No write permission
to ndbm file ... " errors kick in immediately thereafter ...

Does that help?

        - Greg

P.S. Next step is to make a new BayesStore.pm to insert dbg messages
     in the code region where the sync is supposed to take place,
     unless you already know what the problem is from this description.



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?   SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to