method
begin_transaction
v5.2.3 -
Show latest stable
- Class:
ActiveRecord::ConnectionAdapters::TransactionManager
begin_transaction(options = {})public
No documentation available.
# File activerecord/lib/active_record/connection_adapters/abstract/transaction.rb, line 196
def begin_transaction(options = {})
@connection.lock.synchronize do
run_commit_callbacks = !current_transaction.joinable?
transaction =
if @stack.empty?
RealTransaction.new(@connection, options, run_commit_callbacks: run_commit_callbacks)
else
SavepointTransaction.new(@connection, "active_record_#{@stack.size}", @stack.last, options,
run_commit_callbacks: run_commit_callbacks)
end
@stack.push(transaction)
transaction
end
end