On Thu, 2009-06-04 at 17:18 +0000, Luis campo wrote: > total used free shared buffers cached > Mem: 1033468 1012956 20512 0 71440 270720 > -/+ buffers/cache: 670796 362672 > Swap: 2031608 0 2031608
OK, no swap usage initially. > works for a few minutes then stops again A few minutes. When originally reporting the issue, you mentioned 20 minutes. So, did the operational time decrease, since you doubled the spamd children to 20? > @400000004a27f6b60c9922c4 simscan:[26843]:CLEAN (0.00/3.00):112.9283s:: > @400000004a27f6b60ea04d04 simscan:[23571]:CLEAN (0.00/3.00):221.3648s:: That's *much* more time than you reported before. Both might hint you actually are hitting swap. > total used free shared buffers cached > Mem: 1033468 531860 501608 0 26700 147200 > -/+ buffers/cache: 357960 675508 > Swap: 2031608 13684 2017924 Hmm, these after figures are slightly odd. I take it you got that after killing spamd? Yeah, there you are using swap. Not much, but then again lots of your physical memory has been freed, too. So that probably could just be a timing issue -- numbers /while/ spamd turns unresponsive would be more revealing. Anyway, yes -- I agree it looks like a swap problem. Bringing up 10 additional spamd children with a Gig of memory seriously didn't help at all. I'd try as Bowie suggested. Also, some questions remain un-answered. (a) Do you scan *all* messages, regardless of their size? Don't do that, but skip scanning for messages larger than about 500 kByte. Scanning large messages consumes lots of RAM, and will amplify your problem. (b) Do you have any third- party rule-sets or plugins enabled? -- 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; }}}