# HG changeset patch # User Sylvain Thénault # Date 1279188193 -7200 # Node ID 00b1b6b906cf8e014a0778eddaba964a696b6e20 # Parent 5120d97e2f7ee65cfc3f4fced749c24df3ac8066 [transaction] if error on rollbacking a source, replace the connection by a new one diff -r 5120d97e2f7e -r 00b1b6b906cf server/pool.py --- a/server/pool.py Thu Jul 15 11:38:31 2010 +0200 +++ b/server/pool.py Thu Jul 15 12:03:13 2010 +0200 @@ -67,6 +67,9 @@ cnx.rollback() except: source.critical('rollback error', exc_info=sys.exc_info()) + # error on rollback, the connection is much probably in a really + # bad state. Replace it by a new one. + self.reconnect(source) def close(self, i_know_what_i_do=False): """close all connections in the pool"""