SpamAssassin/Perl eating enormous amounts of memory?
sneepre at me.com
Tue Mar 3 08:26:38 PST 2009
On Mar 3, 2009, at 8:01 AM, Andrew Moran wrote:
> In Mar 3, 2009, at 7:40 AM, Mel wrote:
>> On Monday 02 March 2009 16:21:53 Andrew Moran wrote:
>>>> What's even weirder is that the process gets that far. Did you play
>>>> kern.maxdsiz loader tuneable?
>>>> If so, set it lower, so you can at least have the machine in a
>>>> usable state at
>>>> all times. 4G should be enough for any process and should give
>>>> enough time
>>>> for you to spot the leak and get a ktrace.
>>> Nope, I haven't tweaked any kernel settings, just using the generic
>>> DEFAULT amd64 kernel. I've been way about tweaking settings
>>> I don't fully understand what the 'correct' values for my setup are.
>> Could you show kenv kern.maxdsiz and if unset limits -H -d? Looks
>> like it's
>> 32G on my 6.x amd64, in which case setting it is a good idea.
>> echo 'kern.maxdsiz="8G"' >> /boot/loader.conf
>> echo 'kern.defdsiz="4G"' >> /boot/loader.conf
> Thank you for helping me. The earlier suggestion of toggling
> Perl Malloc didn't work, nor did syncing sources and installing new
> kernel and new world which is what I did lsat night.
> As for kernel settings, I don't have anything in my loader.conf,
> and I'm not entirely sure how to show things that aren't sysctls, as
> this one doesn't seem to be:
> celebrian# sysctl -a | grep kern.maxdsiz
> celebrian# sysctl -a | grep kern.defdsiz
Ok sadly that didn't seem to do much:
celebrian# cat /boot/loader.conf
I rebooted, but still see my memory being chewed up. Almost
immediately after booting, one of my spamassassin processes spun out
of control. Here's the top with it eating 16 gigs of memory:
PID UID THR PRI NICE SIZE RES STATE C TIME WCPU
1611 1030 1 68 0 15062M 818M CPU2 2 0:44 20.65%
and from dmesg:
pid 1611 (perl5.8.9), uid 1030, was killed: out of swap space
The computer gets pretty unresponsive during this, unless swapoff my
swap, then the process eats the memory faster and gets killed
faster. Did I type in the wrong variables?
More information about the freebsd-questions