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

           Summary: Spam children should check memory usage and die if fat
           Product: Spamassassin
           Version: unspecified
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: enhancement
          Priority: P3
         Component: spamc/spamd
        AssignedTo: [email protected]
        ReportedBy: [EMAIL PROTECTED]


This is vaguely related to bug 3838, and probably several others.

The big problem (pun intended) that most people seem to have with the new 
algorithm for keeping children around is that one will get fat suddenly for 
some reason, and then sit around consuming memory for possibly quite a long 
time.  If several children happen to all get fat during that period the machine 
falls over.

The current 'solution' to this is a combination of limiting message size 
processed, limiting number of connections per life, and limiting number of 
children.

The actual desire is to limit total percentage if actual memory consumed.  The 
current options only provides assorted means to approximate the desired goal.  
Since they don't actually measure total memory usage (or even their won usage) 
this is to be expected.

Suggest a new option that will make a child die after it gets indigestion, 
regardless of the number of children/lives/etc specified.  The amount of memory 
consumed could be an administrator set option, or it could be a computed 
percentage if the mean child size over the last hour, or something else that 
seemed appropriate.  The simplest might be an administrator option, but it 
would make more sense to try to guess the right size automatically.

Yes, I realize the problems with determining shared memory size on various 
versions of *nix.  Those are certainly annoyances, but I don't see them as 
negating the basic concept.

An alternate way to decide when to die might be to factor load average times 
memory size and die above some cutoff amount.



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to