instance method
flush
Ruby on Rails 7.2.3
Since v5.2.8.1Signature
flush(minimum_idle = @idle_timeout)
Disconnect all connections that have been idle for at least minimum_idle seconds. Connections currently checked out, or that were checked in less than minimum_idle seconds ago, are unaffected.
Parameters
-
minimum_idleopt = @idle_timeout
Source
# File activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb, line 661
def flush(minimum_idle = @idle_timeout)
return if minimum_idle.nil?
idle_connections = synchronize do
return if self.discarded?
@connections.select do |conn|
!conn.in_use? && conn.seconds_idle >= minimum_idle
end.each do |conn|
conn.lease
@available.delete conn
@connections.delete conn
end
end
idle_connections.each do |conn|
conn.disconnect!
end
end
Defined in activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb line 661
· View on GitHub
· Improve this page
· Find usages on GitHub