"Greg Rumple" <[EMAIL PROTECTED]> wrote:

> The test.pl script works fine by it's self.  Turning on full PERL
> debugging/tracing yields that the actual script has fully finished, and
> that it's in the tear down of the actualy perl stuff that this failure
> is coming from.   Not from the script per se.  But it is the script that
> is causing this problem.  Commenting out the connect and disconnect
> lines causes the server to startup and function just fine.

<conf snippage; test.pl containing:>

> BEGIN {
>     unshift(@INC, qw(
>         /home/grumple/src/test/lib/perl5
>         /home/grumple/src/test/system/lib/perl5
>     ));
> }

did you intend that this BEGIN block only execute at server-start time, not
for each script execution?  if not, you might try replacing this with:

use lib qw(
  /home/grumple/src/test/lib/perl5
  /home/grumple/src/test/system/lib/perl5
);

> use DBI;

again, just a shot in the dark, but why not try the more mod_perl specific
Apache::DBI instead of plain ole DBI?

> use DBD::Informix;

i don't think you need this use statement at all.  the DBI->connect() call
should load the "correct" DBD Driver, for you, not that it *should* make any
difference... but hey.

> ## informix connection params
> $ENV{'INFORMIXDIR'}    ||= '/opt/informix';
> $ENV{'INFORMIXSERVER'} ||= 'test_tcp';
> $ENV{'LD_LIBRARY_PATH'} .= ":$ENV{'INFORMIXDIR'}/lib";
>
> my $catalog = 'test';
> my $constr = join(':', 'dbi', 'Informix', $catalog);
> my $user = 'test';
> my $password = 'test';
>
> my $dbh = DBI->connect($constr,$user,$password);

i would certainly suggest adding:

    or die DBI::errstr;

to that connect() call!

> $dbh->disconnect();

um, okay but why disconnect at all, if you know the segfault is caused by
the connect and/or disconnect calls? have you tries simply *not*
disconnecting?  one of The Features/Advantages of Apache::DBI (over plain
ole DBI) is that disconnect calls simlpy destroy the connection *object*
(the perl data structure) without actually disconnecting from the DB, and
therby maintaining a pool of cached connections, and therby speeding things
up nicely.


Reply via email to