procmail
[Top] [All Lists]

Re: procmail/sendmail/BSDI problems ?

1999-03-11 21:52:38
Michael Hall <mhall(_at_)riverside(_dot_)org> writes:
On Wed, Mar 10, 1999 at 10:17:48AM -0600, Philip Guenther wrote:

Mar  9 14:00:32 cronus procmail[1741]: Out of memory as I tried to allocate 
4198448 bytes

BSD based system + big message problems ==> upgrade to procmail version 3.12

(realloc() under BSD systems is a inefficient operation.  3.12 detects
this during configuration and tweaks its allocation routine to use a
exponential growth.)

 Era also previously made the same recommendation in a reply. I upgraded
it to 3.12 and it indeed fix some things. All except one (a 9.9M message)
of the messages that was erroring out before now processed successfully.

The sequence of sizes that procmail uses on these systems runs as follows:

           16834
          278528
         2375680
        10764288

(No prizes for figuring out where those number come from.)  If an
allocation fails, procmail halves the size of the increase and tries
again until it halves is back down to 16k, at which point it gives up.
How much actual memory is needed to perform those allocations I do not
know, as it depends on how much internal fragmentation is present in
the malloc routines.

Checking what the datasize limit is for sendmail and its children is a
good idea.  If that's not the problem, then you should probably just
throw more memory at the machine (how much does it have now, and how
much does it normally have 'free'?)


Philip Guenther

<Prev in Thread] Current Thread [Next in Thread>