DBI and Apache::DBI issues

Max Pinton <[email protected]>
Newsgroups gmane.comp.apache.mod-perl
Message-ID <[email protected]>
Hello mod_perlers,

I recently updated my server, which was running Debian Sarge, and  
migrated from mod_perl 1 to 2, among many other upgrades. It wasn't a  
smooth process, but I suppose skipping three major OS versions I  
shouldn't have expected it to be.

But the issue I'm asking about today is with DBI (1.612) and  
Apache::DBI (1.08). In my old configuration they worked fine, but  
after the upgrade I started seeing tons of errors like this:

DBD::mysql::st execute failed: Commands out of sync; you can't run  
this command now
DBD::mysql::st fetchrow_hashref failed: fetch() without execute()
Can't set DBI::st=HASH(0xba5fc640)->{NAME}: unrecognised attribute  
name or invalid value
Can't call method "get" on an undefined value
DBD::mysql::st execute failed: Lost connection to MySQL server during  
query
DBD driver has not implemented the AutoCommit attribute

So I removed Apache::DBI from my startup.perl, which almost fixed it.  
But not quite. I would still get occasional errors like this:

DBD::mysql::st fetchrow_hashref failed: fetch() without execute()

One sort of oddball thing I'm doing is using a convenience wrapper  
that looks like this:

package My::DBI;
use DBI;
sub connect {
	my $class = shift;
	...
	DBI->connect($dsn, $user, $dbpw, @_);
}

And then elsewhere doing this:

package My::Foo;
use My::DBI;
my $dbh = My::DBI->connect;
sub new {
	my $sth = $dbh->...
}

Thinking that the problem was that $dbh was having some weird scope  
issue, I moved all the connect calls into the subs that use them. This  
seems to have solved the second batch of errors, but when I re-enable  
Apache::DBI, it starts generating tons of the first kind of errors,  
particularly "Commands out of sync."

I've Googled these errors and haven't found anything that seems  
applicable.

I appreciate any help. Thanks.

Max

---
Max Pinton, [email protected]
Design your own card at http://www.designyourowncard.com/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.