Skip to content

Commit d195598

Browse files
authored
Fix materialized transaction queries (#1108)
1 parent b88b140 commit d195598

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

lib/active_record/connection_adapters/sqlserver/database_statements.rb

+5-5
Original file line numberDiff line numberDiff line change
@@ -76,28 +76,28 @@ def exec_update(sql, name, binds)
7676
end
7777

7878
def begin_db_transaction
79-
execute "BEGIN TRANSACTION", "TRANSACTION"
79+
internal_execute("BEGIN TRANSACTION", "TRANSACTION", allow_retry: true, materialize_transactions: false)
8080
end
8181

8282
def transaction_isolation_levels
8383
super.merge snapshot: "SNAPSHOT"
8484
end
8585

8686
def begin_isolated_db_transaction(isolation)
87-
set_transaction_isolation_level transaction_isolation_levels.fetch(isolation)
87+
set_transaction_isolation_level(transaction_isolation_levels.fetch(isolation))
8888
begin_db_transaction
8989
end
9090

9191
def set_transaction_isolation_level(isolation_level)
92-
execute "SET TRANSACTION ISOLATION LEVEL #{isolation_level}", "TRANSACTION"
92+
internal_execute("SET TRANSACTION ISOLATION LEVEL #{isolation_level}", "TRANSACTION", allow_retry: true, materialize_transactions: false)
9393
end
9494

9595
def commit_db_transaction
96-
execute "COMMIT TRANSACTION", "TRANSACTION"
96+
internal_execute("COMMIT TRANSACTION", "TRANSACTION", allow_retry: false, materialize_transactions: true)
9797
end
9898

9999
def exec_rollback_db_transaction
100-
execute "IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION", "TRANSACTION"
100+
internal_execute("IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION", "TRANSACTION", allow_retry: false, materialize_transactions: true)
101101
end
102102

103103
def case_sensitive_comparison(attribute, value)

0 commit comments

Comments
 (0)