instance method sync_with_transaction_state

Ruby on Rails 4.0.13

Since v4.0.13 Last seen in v4.2.9 Private

Available in: v4.0.13 v4.1.16 v4.2.9

Signature

sync_with_transaction_state()

Updates the attributes on this particular ActiveRecord object so that if it is associated with a transaction, then the state of the AR object will be updated to reflect the current state of the transaction

The @transaction_state variable stores the states of the associated transaction. This relies on the fact that a transaction can only be in one rollback or commit (otherwise a list of states would be required) Each AR object inside of a transaction carries that transaction’s TransactionState.

This method checks to see if the ActiveRecord object’s state reflects the TransactionState, and rolls back or commits the ActiveRecord object as appropriate.

Since ActiveRecord objects can be inside multiple transactions, this method recursively goes through the parent of the TransactionState and checks if the ActiveRecord object reflects the state of the object.

Source
# File activerecord/lib/active_record/core.rb, line 407
    def sync_with_transaction_state
      update_attributes_from_transaction_state(@transaction_state, 0)
    end

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

Defined in ActiveRecord::Core

Type at least 2 characters to search.

↑↓ navigate · open · esc close