I've been having weirdness with errors in my error_log while stopping
and starting
apache 1.3.33. Basically I see:
[warn] child process 867 did not exit, sending another SIGHUP
for every process. After which I get:
[notice] SIGHUP received. Attempting to restart
Then it restarts.
I'm using an OS X box with MP 1.26 and have striped everything down to
a basic
handler and still get the errors intermittently. Someone on this list
mentioned there
was a known apache 1.3.33/ MP 1.26 bug something to this effect. I've
resigned myself
to being ok with this.
After researching a little on Perl Monks someone said it might be
circular references
and suggested I use Data::Dump to see whether I do or not. Another
thing that they
said I could do was put:
warn "Module Name was Destroyed";
in custom DESTROY blocks. I tried it and found some of my modules
weren't being
destroyed properly. I was told I should look at the 'foo' =>
$VAR->{some_scalar} lines
as possible circular loops. There were bunches of them. Which in my
situation is
pretty hard not to do using OOP. I'm going through my code now step by
step and
trying to minimize them, or delete them once they've been used.
My question actually comes from the warn "Module Destroyed" statements.
When I start up apache I usually get one on start up. Is this the
parent or root httpd?
Is it normal for it to clean up on start?
Am I missing an easier way to get my application tightened up?
Because the errors are only during start up and shut down I'm not to
worried about
the error_log ballooning up, should I be? I haven't noticed my httpd
processes
ballooning in memory either, so I should be fine right?
Finally, when does mod_perl do clean up, shut down, each request, or
both?
I hope this is a mod_perl question...
Thanks,
Boysenberry
boysenberrys.com | habitatlife.com | selfgnosis.com