module PgFailover

Constants

Config

Public Class Methods

configuration() click to toggle source
# File lib/pg_failover.rb, line 33
def configuration
  @configuration ||= Config.new
end
configure() { |configuration| ... } click to toggle source
# File lib/pg_failover.rb, line 11
def configure
  yield configuration if block_given?

  if configuration.enabled?
    if configuration.throttle_enabled?
      configuration.logger.info("Enabled PgFailover policy (one check per #{configuration.throttle_interval} seconds per connection on checkout)")
    else
      configuration.logger.info('Enabled PgFailover policy (one check for every checkout from the connection pool)')
    end

    SequelAdapter.enable if defined?(::Sequel)
    ActiveRecordAdapter.enable if defined?(::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter)

  else
    configuration.logger.warn 'Disabled PgFailover policy'
  end
end
connection_validator() click to toggle source
# File lib/pg_failover.rb, line 29
def connection_validator
  @connection_validator ||= ConnectionValidator.new(configuration)
end