You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Trond Arve Nordheim <tr...@oslonett.no> on 2000/07/17 14:45:40 UTC

Apache segfault

Hi.
I'm having problems with my Apache segfaulting when I run subroutines from
modules that uses DBI. ([Mon Jul 17 13:55:22 2000] [notice] child pid 28327
exit signal Segmentation fault (11)).
It seems like the DBI->connection function causes this, but I'm not able to
find out why. It's actually happening on BOTH my servers at home (OpenBSD
and Slackware Linux), so I guess I made a "bobo" somewhere... Can anyone
here guide me back on to the tracks ? ;)

- dufuz


RE: Apache segfault

Posted by Perrin Harkins <pe...@primenet.com>.
On Tue, 18 Jul 2000, Trond Arve Nordheim wrote:
> Since it's ONLY DBI->connect that calls this segfault, I can't imagine
> it beeing anything else BUT a but in some MySQL-libraries or
> perl-modules. I'm getting kind of desperat here, so an answer would be
> deeply appreciated :)

Have you tried contacting the author of DBD::mysql?  Have you tried
building mod_perl static?

- Perrin


RE: Apache segfault

Posted by Trond Arve Nordheim <tr...@oslonett.no>.
Ok...
I can't say it helps to know WHAT happends when I don't know how to fix it
;)
Setting PERL_DESTRUCT_LEVEL to -1 didn't make a diffrence at all.
I've read on this mailinglist that a bug in the MySQL drivers may cause this
error by sending a null-pointer to some function I don't remember the name
of ;)

Hasn't ANYONE been able to fix this ?
I *really* need this working, and fast! It seems many people have this
problem, and it surprises me that nobody knows exactly what goes wrong, and
what to do to get it fixed.

I've also read that this may be a problem between mod_perl and mod_php
(PHP4.0), and PHP doing things with DBI that causes this segfault.
I tried to recompile my Apache without PHP, but the segfault is still
there...

Since it's ONLY DBI->connect that calls this segfault, I can't imagine it
beeing anything else BUT a but in some MySQL-libraries or perl-modules.
I'm getting kind of desperat here, so an answer would be deeply appreciated
:)

- dufuz

-----Original Message-----
From: hanisch@informatik.uni-muenchen.de
[mailto:hanisch@informatik.uni-muenchen.de]
Sent: 17. juli 2000 16:24
To: Lukas Ertl
Cc: Trond Arve Nordheim; modperl@apache.org
Subject: Re: Apache segfault


On Mon, 17 Jul 2000, Lukas Ertl wrote:

Hi *,

I experienced the same problem on a server running Apache 1.3.12 +
mod_perl 1.21 under SuSe Linux 6.4.

As I understand it, this is caused by the perl_destruct() API call, which
in turn calls the DESTROY method plus END blocks in the Perl code.
perl_destruct is executed whenever a child process is exiting, e.g. after
reaching MaxRequests. If the DESTROYS take too long, the child process is
shut down using the KILL signal, thus producing a segmentation fault.
(This is pretty much what I gathered from The Guide, see the URI below.)

Setting PERL_DESTRUCT_LEVEL to -1 will help you to get rid of those
logfile entries; see

http://perl.apache.org/guide/control.html#Speeding_up_the_Apache_Terminati

for more info.

However, I am wondering if this really is the right thing to do? The
DESTROY and END blocks are there for a reason, so just ignoring them
seems a little rude - and possibly dangerous.

Anyone out there who has further explanations?

Regards,
	Michael.


________________________________________________________
Michael   |  email: hanisch@informatik.uni-muenchen.de
Hanisch   |
________________________________________________________


Re: Apache segfault

Posted by Michael Hanisch <ha...@informatik.uni-muenchen.de>.
On Mon, 17 Jul 2000, Lukas Ertl wrote:

> On Mon, 17 Jul 2000, Trond Arve Nordheim wrote:
> 
> > Hi.
> > I'm having problems with my Apache segfaulting when I run subroutines from
> > modules that uses DBI. ([Mon Jul 17 13:55:22 2000] [notice] child pid 28327
> > exit signal Segmentation fault (11)).
> > It seems like the DBI->connection function causes this, but I'm not able to
> > find out why. It's actually happening on BOTH my servers at home (OpenBSD
> > and Slackware Linux), so I guess I made a "bobo" somewhere... Can anyone
> > here guide me back on to the tracks ? ;)
> 
> I have exactly the same problem on a Suse Linux box, with MySQL 3.22.32,
> Apache 1.3.12 and mod_perl 1.24.

Hi *,

I experienced the same problem on a server running Apache 1.3.12 +
mod_perl 1.21 under SuSe Linux 6.4.

As I understand it, this is caused by the perl_destruct() API call, which
in turn calls the DESTROY method plus END blocks in the Perl code.
perl_destruct is executed whenever a child process is exiting, e.g. after
reaching MaxRequests. If the DESTROYS take too long, the child process is
shut down using the KILL signal, thus producing a segmentation fault.
(This is pretty much what I gathered from The Guide, see the URI below.)

Setting PERL_DESTRUCT_LEVEL to -1 will help you to get rid of those
logfile entries; see

http://perl.apache.org/guide/control.html#Speeding_up_the_Apache_Terminati

for more info.

However, I am wondering if this really is the right thing to do? The
DESTROY and END blocks are there for a reason, so just ignoring them
seems a little rude - and possibly dangerous.

Anyone out there who has further explanations?

Regards,
	Michael.


________________________________________________________
Michael   |  email: hanisch@informatik.uni-muenchen.de 
Hanisch   |                                            
________________________________________________________


Re: Apache segfault

Posted by Lukas Ertl <a9...@unet.univie.ac.at>.

On Mon, 17 Jul 2000, Trond Arve Nordheim wrote:

> Hi.
> I'm having problems with my Apache segfaulting when I run subroutines from
> modules that uses DBI. ([Mon Jul 17 13:55:22 2000] [notice] child pid 28327
> exit signal Segmentation fault (11)).
> It seems like the DBI->connection function causes this, but I'm not able to
> find out why. It's actually happening on BOTH my servers at home (OpenBSD
> and Slackware Linux), so I guess I made a "bobo" somewhere... Can anyone
> here guide me back on to the tracks ? ;)

I have exactly the same problem on a Suse Linux box, with MySQL 3.22.32,
Apache 1.3.12 and mod_perl 1.24.

lg,
le