http://bugzilla.spamassassin.org/show_bug.cgi?id=2912





------- Additional Comments From [EMAIL PROTECTED]  2004-03-14 18:06 -------
Subject: Re:  RFE: allow test order to be controlling using a test 'priority' 
setting

On Fri, Mar 12, 2004 at 01:18:41PM -0800, [EMAIL PROTECTED] wrote:
> 
> Which doesn't work because the meta tests must come after
> harvest_dnsbl_queries which we don't want to run in the loop.
> 
> So we need some way to harvest, run meta tests and then run AWL test.
> 

Here is one possible solution that provides just enough structure to
make sure general cases work well and just enough rope to allow people
to be flexible.

First off priorities are ignored for RBL tests, we'll always kick the
RBL tests before we start the priority loop.  Second, we impose a
restriction that all meta tests must have a priority of at least X (I
picked 500), during configuration if the test is < 500 we reset it's
priority, possibly with a dbg warning (but that would require us to
actually set a priority for all meta rules that are already defined
since the default is 0).

Now to the priority loop.  If the priority is >= 500 we will harvest
the DNS RBL queries (including calling rbl_finish and calling
check_post_dnsbl for the plugins, this will be called only once.
Also, once the priority is >= 500 we will start calling meta_tests.
All other tests are called for each priority.

One thing I'm not certain about is the call to check_tick for the
plugins.  Currently it's called after each block in check.  Is calling
it once each time through the loop sufficient? or does it need to be
called more often?

Hopefully this all makes sense, if not perhaps the code will speak for
itself.  Expect a patch once I validate the results.  Right now the
time comparisons between HEAD and the patch are statistically a dead
heat.

Michael





------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

Reply via email to