diff --git a/trytond/trytond/transaction.py b/trytond/trytond/transaction.py index 01f906fc74..0b4cbbdff7 100644 --- a/trytond/trytond/transaction.py +++ b/trytond/trytond/transaction.py @@ -254,8 +254,9 @@ class Transaction(object): else: self.rollback() finally: - self.database.put_connection( - self.connection, self.close) + if self.connection: + self.database.put_connection( + self.connection, self.close) finally: self.database = None self.readonly = False @@ -379,7 +380,8 @@ class Transaction(object): datamanager.tpc_abort(self) Cache.rollback(self) self._clear_log_records() - self.connection.rollback() + if self.connection: + self.connection.rollback() def join(self, datamanager): try: