details:   https://code.tryton.org/tryton/commit/2a170304744b
branch:    7.6
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 3051164df241 -r 2a170304744b 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
@@ -170,8 +170,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
@@ -186,6 +187,9 @@
                     return False
                 sqlitebck.copy(in_, out)
         conn2.close()
+    finally:
+        database.put_connection(conn1)
+        database.close()
     return True
 
 

Reply via email to