perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip M. Gollucci" <pgollu...@p6m7g8.com>
Subject Re: mod_perl-2.0.2 causing segfaults
Date Mon, 11 Dec 2006 18:14:23 GMT
Grant wrote:
>> > The way my config works, apache2 hands all requests to the interchange
>> > (icdevgroup.org) daemon via a socket by way of the mod_perl module
>> > (Interchange::Link).
>> >
>> > So the error is caused by the mod_perl module trying to read or write
>> > to or from the interchange daemon and failing?  If that's correct, it
>> > sounds like the next thing to do is find out why it's failing?  Can it
>> > be said whether it's a problem with mod_perl, Interchange::Link,
>> > interchange, or something else at this point?
>> >
>> > Also, I tried restarting the interchange daemon with
>> > PERL_SIGNALS=unsafe and the ALERT/segfaults came MUCH MUCH more
>> > frequently.  Does that tell us anything?
>>
>>
>> It would make sense that, when you have high load, there is a problem
>> processing many concurrent requests which triggers the PIPE signal, so
>> you should find out what the error is, and handle it more gracefully.
>>
>> You might want to change the die sub to print out $! and $? - that may
>> give you a bit of a clue as to what caused the PIPE signal.
>>
>> I'm guessing (and it is a guess) that the segfaults may be caused
>> because the die sub sends a web response, but that sub could be called
>> while your server is busy doing something else, and the two actions
>> collide.
> 
> Very good guess.  Commenting out the web response stuff seems to have
> eliminated the segfaults.  Adding $! and $? to the warn line, I'm
> getting one of these two bits along with each ALERT now:
> 
> Broken pipe 0
> Inappropriate ioctl for device 0
This could happen from a Cntrl-C or stop in a browser.

Add
require Carp;
Carp::cluck() to your die() function.


-- 
------------------------------------------------------------------------
Philip M. Gollucci (pgollucci@p6m7g8.com) 323.219.4708
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Software Engineer - TicketMaster - http://ticketmaster.com
1024D/EC88A0BF 0DE5 C55C 6BF3 B235 2DAB  B89E 1324 9B4F EC88 A0BF

I never had a dream come true
'Til the day that I found you.
Even though I pretend that I've moved on
You'll always be my baby.
I never found the words to say
You're the one I think about each day
And I know no matter where life takes me to
A part of me will always be...
A part of me will always be with you.

Mime
View raw message