class ActiveRecord::ConnectionAdapters::ConnectionHandler

@private there’s no other way to change the pool class to use but to patch :(

Public Class Methods

connection_pool_class=(klass) click to toggle source
# File lib/active_record/connection_adapters/pool_class.rb, line 18
def self.connection_pool_class=(klass); @@connection_pool_class = klass end

Public Instance Methods

connection_pool_class() click to toggle source
# File lib/active_record/connection_adapters/pool_class.rb, line 17
def connection_pool_class; @@connection_pool_class end
establish_connection(config) click to toggle source
# File lib/active_record/connection_adapters/pool_class.rb, line 23
def establish_connection(config)
  resolver = ConnectionSpecification::Resolver.new(Base.configurations)
  spec = resolver.spec(config)

  remove_connection(spec.name)

  message_bus = ActiveSupport::Notifications.instrumenter
  payload = {
    connection_id: object_id
  }
  if spec
    payload[:spec_name] = spec.name
    payload[:config] = spec.config
  end

  message_bus.instrument("!connection.active_record", payload) do
    owner_to_pool[spec.name] = connection_pool_class.new(spec) # changed
  end

  owner_to_pool[spec.name]
end