I was able to narrow down the problem I was having, and produce a test case
for you folks. Below are two relatively self-explanatory files. If I
navigate to test.cgi, it will appear to load the page properly, but if I hit
the reload button a bunch of times in a row, the error_log will log
segfaults. I pasted a sample at the bottom of this message. I'd appreciate
any help at all. Obviously the issue is coming from CGI.pm's header
function, which *should* be ok with mod_perl2. Thanks again. --Pubert
##>BEGIN FILE test.cgi<
#!/usr/bin/perl
use lib qw(/var/www/cgi-bin/);;
use strict;
use CGI;
use testclass;
my $cgi=new CGI;
my $tc = testclass->new({CGI=>$cgi});
$tc->doit();
1;
##>BEGIN FILE testclass.pm<
package testclass;
my $self;
#########################################################################################################
sub new {
#########################################################################################################
# This is the
constructor.
my ( $class, $args ) = @_;
return $self if defined $self;
$self = {};
bless $self, $class;
$self->{CGI}=$args->{CGI};
return $self;
}
sub doit{
print $self->{CGI}->header;
print "hello";
}
1;
Begin error_log snipper<
[Mon Jul 02 18:45:34 2007] [notice] SIGHUP received. Attempting to restart
[Mon Jul 02 18:45:34 2007] [notice] Digest: generating secret for digest
authentication ...
[Mon Jul 02 18:45:34 2007] [notice] Digest: done
[Mon Jul 02 18:45:34 2007] [notice] Apache/2.2.4 (Unix) DAV/2
mod_apreq2-20051231/2.6.1 mod_perl/2.0.2 Perl/v5.8.8 configured -- resuming
normal operations
[Mon Jul 02 18:45:39 2007] [notice] child pid 7925 exit signal Segmentation
fault (11)
[Mon Jul 02 18:45:39 2007] [notice] child pid 7926 exit signal Segmentation
fault (11)
[Mon Jul 02 18:45:39 2007] [notice] child pid 7927 exit signal Segmentation
fault (11)
[Mon Jul 02 18:45:40 2007] [notice] child pid 7928 exit signal Segmentation
fault (11)
[Mon Jul 02 18:45:40 2007] [notice] child pid 7929 exit signal Segmentation
fault (11)
[Mon Jul 02 18:45:40 2007] [notice] child pid 7931 exit signal Segmentation
fault (11)