After some investigation, this appears to be a mysql bug or brain-dead
semantics for mysql_ping.
See http://lists.mysql.com/mysql/190441 and
http://bugs.mysql.com/bug.php?id=14057
http://bugs.mysql.com/bug.php?id=2845
Dieter Mauer suggests the right thing is to catch the exception and then
Dennis Allison wrote at 2006-1-16 17:37 -0800:
> ...
>What's the recommend approach to re-establish the connection?
You reopen the connection (usually the "db" object has all necessary
information) and then raise an exception derived from
"ZODB.POSException.ConflictError" (in order to let your req
I have been seeing occasional "release unlocked lock" errors from a
storage error in a two-phase commit which really comes from a "Lost
connection to MySQL server during query". Apparently this arises from
a failure of self.db.ping() to find a connected database as the
transaction is opened.