Re: "Callback called exit." x 100000

2001-09-11 Thread Adi Fairbank

I had this problem a while back and it turned out to be an infinite loop in
my code.  I found it by writing in better logging mechanisms which
pinpointed exactly where the infinite loop was.

HTH,
Adi

Christoph Bergmann wrote:
> 
> Hi...
> 
> I have a problem with an apache_mod_perl-server which flushes the
> httpd.error_log-file with the following lines:
> 
> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Out of memory!
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> ...etc.
> 
> The last line "Callback called exit." is repeated a million times until
> the whole disc is full. It happens from time to time, I can't say when.
> Maybe it has something to do with heavy load, the webserver has about 10
> hits / second, in peak times more.
> 
> I'm not sure it has _definitely_ something to do with mod_perl, but I
> guess so, because of the "Attempt to free unreferenced scalar during
> global destruction." lines before...
> 
> Does anybody know what happens here and what to do?
> 
> Thanx in advance!
> 
> Best regards,
> 
> Christoph Bergmann




RE: "Callback called exit." x 100000, additional info

2001-09-11 Thread Rob Bloodgood


Also, look into the MaxServers settings, and memory calculations in the
Guide:


http://perl.apache.org/guide/config.html#MinSpareServers_MaxSpareServers_

And especially
http://perl.apache.org/guide/performance.html#Choosing_MaxClients

GOOD LUCK!

L8r,
Rob




RE: "Callback called exit." x 100000

2001-09-11 Thread Rob Bloodgood

> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Attempt to free unreferenced scalar during global destruction.
> Out of memory!
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> Callback called exit.
> etc.
>
>
> The last line "Callback called exit." is repeated a million times until
> the whole disc is full. It happens from time to time, I can't say when.
> Maybe it has something to do with heavy load, the webserver has about 10
> hits / second, in peak times more.

Your webserver has run out of memory.

as in, you have NOT limited the allowable resources that apache/mod_perl can
use
and have exceeded both RAM and swap.

Look into Apache::SizeLimit.

HTH!


L8r,
Rob

#!/usr/bin/perl -w
use Disclaimer qw/:standard/;