When working with some databases
$dbh->prepare can talk to DB server.

When connection lost in this stage, code in RETRY block will just catch
exception and rethrow it.
Thus it needs to reconnect and re-prepare.

2007/5/10, Brandon Black [EMAIL PROTECTED]:

6) $dbh->prepare is not protected (always cause exception in case of any
error). Some databases can store prepared statements at server-side.

It is as far as I can see.  _execute calls $self->sth in an eval,
which does the prepare.  Are you saying that some databases will cache
the preparation when they throw an exception, and then not throw an
exception again when you re-use the cached entry?  That sounds like a
bug.
_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
Wiki: http://dbix-class.shadowcatsystems.co.uk/
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
Searchable Archive: http://www.mail-archive.com/[email protected]/

Reply via email to