server/sources/native.py
branchstable
changeset 5606 61b28589d33f
parent 5542 a8ad3df5a8a3
parent 5605 2604545d7dd9
child 5625 6ee2a7b6f194
equal deleted inserted replaced
5599:be94157bd754 5606:61b28589d33f
   442         except (self.OperationalError, self.InterfaceError):
   442         except (self.OperationalError, self.InterfaceError):
   443             # FIXME: better detection of deconnection pb
   443             # FIXME: better detection of deconnection pb
   444             self.warning("trying to reconnect")
   444             self.warning("trying to reconnect")
   445             session.pool.reconnect(self)
   445             session.pool.reconnect(self)
   446             cursor = self.doexec(session, sql, args)
   446             cursor = self.doexec(session, sql, args)
       
   447         except (self.DbapiError,), exc:
       
   448             # We get this one with pyodbc and SQL Server when connection was reset
       
   449             if exc.args[0] == '08S01':
       
   450                 self.warning("trying to reconnect")
       
   451                 session.pool.reconnect(self)
       
   452                 cursor = self.doexec(session, sql, args)
       
   453             else:
       
   454                 raise
       
   455             
   447         results = self.process_result(cursor, cbs)
   456         results = self.process_result(cursor, cbs)
   448         assert dbg_results(results)
   457         assert dbg_results(results)
   449         return results
   458         return results
   450 
   459 
   451     def flying_insert(self, table, session, union, args=None, varmap=None):
   460     def flying_insert(self, table, session, union, args=None, varmap=None):