I used to use Apache::Resource to stop runaway apache daemons from impacting 
the system, but stopped using it when I made some pretty major mods to my 
Apache config (involving replacing large chunks of traditional config with 
<Perl> blocks).

After that, Apache::Resource stopped working. More to the point, it used to 
kill every daemon on any request, and logged the error:
   Ouch!  malloc failed in malloc_block()

I did some experimentation, and found if I increased the values used for 
PERL_RLIMIT_AS, then things started working again. Now, although the perldoc 
for Apache::Resource implies that RLIMIT_AS numbers are in "natural units", 
not Megs, the examples imply this IS in Meg.

At the moment, I'm setting it to PERL_RLIMIT_AS = 120:140. It now seems to 
kill runaway processes at about 50Meg in size - but I have no idea if 
RLIMIT_AS is in some weird units (natural or not), or if there's an overhead 
I have to add beyond the normal process size to calculate this value.

Can someone please explain what's going on? I'd rather know what the values 
mean, rather than randomly experimenting with values till I get what I'm 
after.

The system is running Debian 3.0/woody, and is running the Debian mod_perl, 
version 1.26.

-- 
. Trevor Phillips             -           http://jurai.murdoch.edu.au/ . 
: Web Technical Administrator     -          [EMAIL PROTECTED] : 
| IT Services                        -              Murdoch University | 
 >--------------------------------------------------------------------<
| On nights such as this, evil deeds are done. And good deeds, of     /
| course. But mostly evil, on the whole.                             /
 \      -- (Terry Pratchett, Wyrd Sisters)                          /


-- 
Reporting bugs: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html

Reply via email to