Class: Dekiru::DataMigration::TransactionProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/dekiru/data_migration/transaction_provider.rb

Overview

Provides transaction management functionality for data migrations. Wraps ActiveRecord transaction operations to ensure data consistency during migration operations.

Instance Method Summary collapse

Instance Method Details

#current_transaction_open?Boolean

Checks if there is currently an open database transaction.

Returns:

  • (Boolean)

    true if transaction is open, false otherwise



19
20
21
# File 'lib/dekiru/data_migration/transaction_provider.rb', line 19

def current_transaction_open?
  ActiveRecord::Base.connection.current_transaction.open?
end

#within_transaction { ... } ⇒ Object

Executes the given block within a database transaction.

Yields:

  • Block to execute within transaction



13
14
15
# File 'lib/dekiru/data_migration/transaction_provider.rb', line 13

def within_transaction(&)
  ActiveRecord::Base.transaction(&)
end