On Sat, 2008-03-22 at 10:23 +0800, Sn!per wrote:
> I am comparing the headers on two of my mails. The first mail is NOT a
> spam, and X-Spam-Status is like so:
> 
> No, score=2.7 required=10.0 tests=RCVD_NUMERIC_HELO,RDNS_NONE autolearn=no 
> version=3.2.4
            ^^^

> The second email is a spam, and its X-Spam-Status looks like this:
> Yes, score=24.4 required=10.0 tests=DCC_CHECK,DIGEST_MULTIPLE,
> PYZOR_CHECK,RAZOR2_CF_RANGE_51_100,RAZOR2_CF_RANGE_E8_51_100,RAZOR2_CHECK, 
> RCVD_IN_BL_SPAMCOP_NET,RCVD_IN_PBL,RCVD_IN_SORBS_DUL,RCVD_IN_XBL,RDNS_NONE, 
> URIBL_BLACK,URIBL_JP_SURBL,URIBL_RHS_DOB,URIBL_SC_SURBL,URIBL_WS_SURBL 
> autolearn=spam version=3.2.4
> 
> 
> Question: Why is it that on the header of the ham, autolearn=no ?

Because the score exceeds bayes_auto_learn_threshold_nonspam, which is
0.1 by default. See the docs for M::SA::Plugin::AutoLearnThreshold [1]
and M::SA:Conf [2] section Learning Options, which references there.

Please note that this is a safety measure to prevent accidentally
learning slipped through spam as ham. Do not change it, unless you
really know what you are doing.

Instead, just learn the mail in question manually using sa-learn. There
is no BAYES_xx rule in either of your shown headers, which suggests that
Bayes did not yet see sufficient mail. You can speed this up by manually
learning BOTH, ham and spam, at least 200 each -- after that Bayes will
kick in and classify mail. It probably would have subtracted a point or
two from the ham mail's score.

Also, for future reference, please note that Bayes is not self feeding,
in that the threshold will be checked against the score without any
BAYES_xx rule applied.


> I can see that there are entries in these tables: awl,
> bayes_global_vars, bayes_seen, bayes_vars  but bayes_token and
> bayes_expire are empty.

Hmm, never used the SQL backends. But an empty bayes_token table might
hint, that no tokens have been learned so far. Someone else needs to
pick up on this one. :)

  guenther


[1] 
http://spamassassin.apache.org/full/3.2.x/doc/Mail_SpamAssassin_Plugin_AutoLearnThreshold.html
[2] 
http://spamassassin.apache.org/full/3.2.x/doc/Mail_SpamAssassin_Conf.html#learning_options

-- 
char *t="[EMAIL PROTECTED]";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}

Reply via email to