Module: Micronaut::Rails::TransactionalDatabaseSupport::InstanceMethods

Defined in:
lib/micronaut/rails/transactional_database_support.rb

Instance Method Summary collapse

Instance Method Details

#active_record_configured?Boolean

Returns:

  • (Boolean)


7
8
9
# File 'lib/micronaut/rails/transactional_database_support.rb', line 7

def active_record_configured?
  defined?(::ActiveRecord) && !::ActiveRecord::Base.configurations.blank?
end

#transactional_protection_cleanupObject



18
19
20
21
22
23
24
25
26
27
# File 'lib/micronaut/rails/transactional_database_support.rb', line 18

def transactional_protection_cleanup
  return unless active_record_configured?

  if ::ActiveRecord::Base.connection.open_transactions != 0
    ::ActiveRecord::Base.connection.rollback_db_transaction
    ::ActiveRecord::Base.connection.decrement_open_transactions
  end

  ::ActiveRecord::Base.clear_active_connections!
end

#transactional_protection_startObject



11
12
13
14
15
16
# File 'lib/micronaut/rails/transactional_database_support.rb', line 11

def transactional_protection_start
  return unless active_record_configured?

  ::ActiveRecord::Base.connection.increment_open_transactions
  ::ActiveRecord::Base.connection.begin_db_transaction
end