Re: How to deel with time limit exceeded

2018-11-05 Thread Rob McEwen
Another thing that helps - is to lighten the load on your SA by putting 
high quality low-FP DNSBLs in front of SA, that are first called by your 
MTA, where spams blocked by those aren't even scanned by SA.

--Rob McEwen

On 11/5/2018 2:48 PM, Andreas Thienemann wrote:


Hi,

I've got a mailserver dealing with a moderate amount of mails... Say 
about 20k mails a day.


The setup has a spamassassin 3.4.2 with a mysql database for bayes and 
to do a minimum of logging.


I've recently seen a lot of mail scans not completing due to running 
out of time. The message I am seeing most often is "check: exceeded 
time limit in 
Mail::SpamAssassin::Plugin::Check::_eval_tests_type11_prineg90_set3, 
skipping further tests". This is happening for abour 5% of incoming mail.


I am trying to understand what exactly is going on here?
It seems that this is happening since I moved bayes to a local mysql 
database to resolve locking problems I saw in the logs with the 
on-disk files. I previously had configured spamd to run with 
--timeout-child=30 which now seems too small.


Having looked at the code of SA I understand that this string is built 
using the following variables:

$package_name."::_".$ruletype."_tests_".$clean_priority;

But that does not really help me understand _what_ is taking that long 
and how I can improve the spamassassin runtime.


Any ideas?

thanks,
 Andreas



--
Rob McEwen



Re: How to deel with time limit exceeded

2018-11-05 Thread Henrik K
On Mon, Nov 05, 2018 at 08:48:47PM +0100, Andreas Thienemann wrote:
> 
> The setup has a spamassassin 3.4.2 with a mysql database for bayes and to do
> a minimum of logging.
> 
> I've recently seen a lot of mail scans not completing due to running out of
> time. The message I am seeing most often is "check: exceeded time limit in
> Mail::SpamAssassin::Plugin::Check::_eval_tests_type11_prineg90_set3,
> skipping further tests". This is happening for abour 5% of incoming mail.
> 
> I am trying to understand what exactly is going on here?
> It seems that this is happening since I moved bayes to a local mysql
> database to resolve locking problems I saw in the logs with the on-disk
> files. I previously had configured spamd to run with --timeout-child=30
> which now seems too small.

prineg90 = priority -90 = BAYES rules.

So your MySQL is too slow / bad settings / not using InnoDB etc.  If you
want easy solution, switch database to Redis and never worry about Bayes
anymore.



How to deel with time limit exceeded

2018-11-05 Thread Andreas Thienemann



Hi,

I've got a mailserver dealing with a moderate amount of mails... Say about 
20k mails a day.


The setup has a spamassassin 3.4.2 with a mysql database for bayes and to 
do a minimum of logging.


I've recently seen a lot of mail scans not completing due to running out 
of time. The message I am seeing most often is "check: exceeded time limit 
in Mail::SpamAssassin::Plugin::Check::_eval_tests_type11_prineg90_set3, 
skipping further tests". This is happening for abour 5% of incoming mail.


I am trying to understand what exactly is going on here?
It seems that this is happening since I moved bayes to a local mysql 
database to resolve locking problems I saw in the logs with the on-disk 
files. I previously had configured spamd to run with --timeout-child=30 
which now seems too small.


Having looked at the code of SA I understand that this string is built 
using the following variables:

$package_name."::_".$ruletype."_tests_".$clean_priority;

But that does not really help me understand _what_ is taking that long and 
how I can improve the spamassassin runtime.


Any ideas?

thanks,
 Andreas