instance method with_pool_transaction_isolation_level

Ruby on Rails 8.1.2

Since v8.1.2

Signature

with_pool_transaction_isolation_level(isolation_level, &block)

Makes all transactions the current pool use the isolation level initiated within the block.

Parameters

isolation_level req
block block
Source
# File activerecord/lib/active_record/transactions.rb, line 240
      def with_pool_transaction_isolation_level(isolation_level, &block)
        if current_transaction.open?
          raise ActiveRecord::TransactionIsolationError, "cannot set default isolation level while transaction is open"
        end

        old_level = connection_pool.pool_transaction_isolation_level
        connection_pool.pool_transaction_isolation_level = isolation_level
        yield
      ensure
        connection_pool.pool_transaction_isolation_level = old_level
      end

Defined in activerecord/lib/active_record/transactions.rb line 240 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveRecord::Transactions::ClassMethods

Type at least 2 characters to search.

↑↓ navigate · open · esc close