aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorNick Sieger <nick@nicksieger.com>2008-08-07 23:13:21 -0700
committerNick Sieger <nick@nicksieger.com>2008-08-29 14:12:11 -0500
commit1712e37c90d0ac74b21589c0ee7b0365cb2b7beb (patch)
tree606d86be97e3252997e077e94b09e4c69b9ba88f /activerecord/lib/active_record
parent817a07b45105f7043846973525a9edc44028c0d4 (diff)
downloadrails-1712e37c90d0ac74b21589c0ee7b0365cb2b7beb.tar.gz
rails-1712e37c90d0ac74b21589c0ee7b0365cb2b7beb.tar.bz2
rails-1712e37c90d0ac74b21589c0ee7b0365cb2b7beb.zip
Favor existing connections over new ones if available
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb b/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
index 50b2badbe6..1d7efc89e1 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
@@ -232,10 +232,10 @@ module ActiveRecord
def checkout
# Checkout an available connection
conn = @connection_mutex.synchronize do
- if @connections.length < @size
- checkout_new_connection
- elsif @checked_out.size < @connections.size
+ if @checked_out.size < @connections.size
checkout_existing_connection
+ elsif @connections.size < @size
+ checkout_new_connection
end
end
return conn if conn