details: https://code.tryton.org/tryton/commit/6e2531b54a64
branch: 7.0
user: Cédric Krier <[email protected]>
date: Thu Apr 02 19:24:07 2026 +0200
description:
Do not use a Transaction to copy SQLite database for tests restoration
Starting a Transaction can only be done on a already setup database as
the
cache synchronisation may query the `ir_cache` table.
Closes #14742
(grafted from 205b618af9b4fa41625b7b7d3d118151fe421eca)
diffstat:
trytond/trytond/tests/test_tryton.py | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diffs (25 lines):
diff -r c683ffe7097d -r 6e2531b54a64 trytond/trytond/tests/test_tryton.py
--- a/trytond/trytond/tests/test_tryton.py Sat Apr 04 00:52:12 2026 +0200
+++ b/trytond/trytond/tests/test_tryton.py Thu Apr 02 19:24:07 2026 +0200
@@ -165,8 +165,9 @@
finally:
database.put_connection(connection, True)
- with Transaction().start(DB_NAME, 0) as transaction:
- conn1 = transaction.connection
+ database = backend.Database(DB_NAME).connect()
+ conn1 = database.get_connection()
+ try:
with sqlite.connect(file_) as conn2:
if restore:
in_, out = conn2, conn1
@@ -181,6 +182,9 @@
return False
sqlitebck.copy(in_, out)
conn2.close()
+ finally:
+ database.put_connection(conn1)
+ database.close()
return True