class ActiveRecord::ConnectionAdapters::MariaDbClusterPoolAdapter::AvailableConnection
This simple class puts an expire time on an array of connections. It is used so the a connection to a down database won’t try to reconnect over and over.
Attributes
connection[R]
expires[W]
failed_connection[W]
Public Class Methods
new(connection, failed_connection = false, expires = nil)
click to toggle source
# File lib/active_record/connection_adapters/maria_db_cluster_pool_adapter.rb, line 189 def initialize(connection, failed_connection = false, expires = nil) @connection = connection @failed_connection = failed_connection @expires = expires end
Public Instance Methods
expired?()
click to toggle source
# File lib/active_record/connection_adapters/maria_db_cluster_pool_adapter.rb, line 195 def expired? @expires ? @expires <= Time.now : false end
failed?()
click to toggle source
# File lib/active_record/connection_adapters/maria_db_cluster_pool_adapter.rb, line 199 def failed? @failed_connection end
reconnect!()
click to toggle source
# File lib/active_record/connection_adapters/maria_db_cluster_pool_adapter.rb, line 203 def reconnect! @connection.reconnect! if @connection.active? @failed_connection = false @expires = nil else raise DatabaseConnectionError.new end end