> On Wed, 11 Aug 2010 17:30:40 -0400 Bowie Bailey <bowie_bai...@buc.com> wrote: > > On 8/11/2010 3:30 PM, John Hardin wrote:
> > > The current situation is: automatic rule updates are only generated > > > when the corpa of recent messages used in the nightly masscheck is > > > sufficiently large (150k+ of both spam and ham, IIRC), and that's > > > been difficult to achieve for a while due to ham starvation. More > > > volunteers to perform nightly local masschecks of fresh ham corpora > > > and upload the results, or to maintain and upload non-private ham > > > corpora to the nightly masscheck server, would be most welcome! > > In case anyone else is following this... > > > > The sa-update process made things a bit more complex than simply > > renaming the file after updates. If that's all you do, then sa-update > > loses track of the file and will download a new copy on every run. > > What I had to do is this: > > > > 1) Rename the .cf file back to the original name so sa-update can > > find it 2) Run sa-update > > 3) Rename the .cf file to z_sought_rules_yerp_org.cf > > 4) Restart spamd > > > > You don't have to mess with the directory, just rename the main > > sought_rules_yerp_org.cf file. > > Would it not be simpler just to do something like this Sadly, no. The problem is, that not only the sub-rules change, but with them the actually scored meta rules, combining these sub-rules by OR-ing them. That means, stale meta rules in stock will override the fresh meta rules, effectively discarding all fresh sub-rule matches. Bottom line: If the dedicated sought channel is more up-to-date and updated more frequently, using that one in *addition* to (faster) aging stock rules currently needs careful hacks -- to preserver the precious meta. Or, well, any SA or channel provided method, to tweak the order. SA method would be a new feature. Channel method would be a rename, to come last in alphabetical order. Bummer. :( This is a real problem and worth filing a bug. -- char *t="\10pse\0r\0dtu...@ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4"; 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; }}}