Marcin, > This option doesn't work as i wish ;) spamd child isn't killing after > time set in --timeout-child, it is working, and working and utilizes > 100% CPU until i send kill signal. > It seems for me this option works as described below: > (for this example --timeout-child=10 sec)
> Should i fill bug with this idea (or bug descibed there: > http://osdir.com/ml/users-spamassassin/2011-03/msg00481.html or there: > http://www.gossamer-threads.com/lists/spamassassin/users/161931#161931 ) ? > Or it's enough it was discussed here? It would be worthwhile to investigate your spamd's debug log and see what is going on. The --timeout-child sets a deadline time, which then controls most of the stages of spam checking, although it is not a hard promise: perl uses a concept of safe-signals which means that atomic perl opcodes won't be interrupted by a timer. If a runaway regexp of a rule takes excessive time, the deadline exceeded will only be detected after that rule has finished its work. Similarly some database operations are not interrupted by SpamAssassin right after a deadline is reached, but are allowed to complete for the sake of database integrity. So it is not uncommon that a deadline gets exceeded occasionally by few seconds. Seeing delays larger than that are worth investigating. > spamc gets answer from daemon: > 0.0 TIME_LIMIT_EXCEEDED Exceeded time limit / deadline All the tests that have completed up till the deadline should be included in the reported score. It may be the TIME_LIMIT_EXCEEDED alone, but more commonly there would be other tests too. If you always see a TIME_LIMIT_EXCEEDED as the only reported test and a score of 0, then this should be investigated and warrants opening a ticket. Mark