[Adding the mailing list back in]
You might try turning on DBI_TRACE which will tell you *which*
DBD/Pg.pm driver file and version it thinks it successfully loaded.
I added the requisite lines to httpd.conf as per here
https://perl.apache.org/docs/1.0/guide/databases.html#Debugging_code_which_deploys_DBI
I'm not much help on the Apache or mod_perl side... sorry.
And got this after restarting httpd (which runs the startup.pl file):
DBI 1.643-ithread default trace level set to 0x0/3 (pid 101338 pi 5613a02b73e0)
at DBI.pm line 294 via startup.pl line 5
The code in DBI.pm I was looking at needs the 0xF (15?) trace bit to be set.
If you can modify your code I would suggest trying to limiting the
trace to just the connect statement:
DBI->trace(0xF, '/tmp/logfile.txt');
my $lda = DBI->connect("dbi:Pg:$dbname", $login, $dbpass, {RaiseError=>1});
DBI->trace(0, undef);
Or perhaps even the value 'ALL' for that short amount of time:
DBI->trace('ALL', '/tmp/logfile.txt');
my $lda = DBI->connect("dbi:Pg:$dbname", $login, $dbpass, {RaiseError=>1});
DBI->trace(0, undef);
You can use DBI_TRACE=ALL=/tmp/logfile.txt as well.
--
Mark Lawrence