From 1383039dd64534e82b87223467219b0d2949379f Mon Sep 17 00:00:00 2001 From: Jesse Chavez Date: Tue, 23 Jul 2024 08:46:06 +1000 Subject: [PATCH] fix savepoint test, it seems transaction needs to be materialized before creating a savepoint change relates to https://github.com/rails/rails/commit/3f19431a0f909f5071f19b1c484c511eaae1849b materilaization is trigger by executing any query inside the transaction Cherry-picked from my fork --- test/transaction_test_methods.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/transaction_test_methods.rb b/test/transaction_test_methods.rb index 1725f024a..2bd1f8e85 100644 --- a/test/transaction_test_methods.rb +++ b/test/transaction_test_methods.rb @@ -206,10 +206,14 @@ def test_using_named_savepoints def test_current_savepoints_name MyUser.transaction do + MyUser.delete_all # Dirty the transaction to force a savepoint below + assert_nil MyUser.connection.current_savepoint_name assert_nil MyUser.connection.current_transaction.savepoint_name MyUser.transaction(:requires_new => true) do + MyUser.delete_all # Dirty the transaction to force a savepoint below + assert_equal "active_record_1", MyUser.connection.current_savepoint_name assert_equal "active_record_1", MyUser.connection.current_transaction.savepoint_name