[Dbix-class] DBIx::Class 0.07999_05 (aka 0.08 RC2) released

Nilson Santos Figueiredo Junior acid06 at gmail.com
Mon Jun 11 06:53:33 GMT 2007


On 6/11/07, Brandon Black <blblack at gmail.com> wrote:
> Are you sure $@ is being set?  If $sth->execute() is returning a false
> value that would trip up the current code as well (as it checks !$rv).
>  DBI says false return values are an error for $sth->execute (zero
> rows is "0E0", which is zero but true), but perhaps MySQL + DBD::mysql
> return an actual zero in your case?  Come to think of it, since we now
> enforce RaiseError (and doc that coderef connect users should be
> setting it, it's arguable we shouldn't be checking the retval for
> errors at all.  You might look at what $rv is near that line 883,
> and/or try removing the !$rv check.

$@ is set and $rv is false but no real error occurred. The issue seems
to happen because when the failing $sth->execute() is called, another
two calls to _dbh_execute()  are issued before the first
$sth->execute() returns.

I couldn't really understand why it happens that way, but those
"nested" calls seemed to be somewhat related to
DBIx::Class::Storage::DBI::Cursor since it was being passed as one of
the parameters.

-Nilson Santos F. Jr.



More information about the Dbix-class mailing list