diff --git a/trytond/trytond/protocols/dispatcher.py b/trytond/trytond/protocols/dispatcher.py index f5b0a5e20a..72c6eec5a9 100644 --- a/trytond/trytond/protocols/dispatcher.py +++ b/trytond/trytond/protocols/dispatcher.py @@ -212,11 +212,13 @@ def _dispatch(request, pool, *args, **kwargs): for i in inst] except TransactionError as e: transaction.rollback() + transaction.tasks.clear() e.fix(transaction_extras) continue except backend.DatabaseOperationalError: if count < retry and not rpc.readonly: transaction.rollback() + transaction.tasks.clear() count += 1 logger.debug("Retry: %i", count) continue