From 657095d8bbec51999d66b379245e8d3466ee27af Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Thu, 8 Mar 2012 16:12:49 -0800 Subject: ensure that released connections move between threads --- activerecord/test/cases/connection_pool_test.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'activerecord/test/cases') diff --git a/activerecord/test/cases/connection_pool_test.rb b/activerecord/test/cases/connection_pool_test.rb index 25375c5f7a..861ae7e120 100644 --- a/activerecord/test/cases/connection_pool_test.rb +++ b/activerecord/test/cases/connection_pool_test.rb @@ -31,6 +31,24 @@ module ActiveRecord pool.connections.find_all(&:in_use?) end + def test_released_connection_moves_between_threads + thread_conn = nil + + Thread.new { + pool.with_connection do |conn| + thread_conn = conn + end + }.join + + assert thread_conn + + Thread.new { + pool.with_connection do |conn| + assert_equal thread_conn, conn + end + }.join + end + def test_with_connection assert_equal 0, active_connections(pool).size -- cgit v1.2.3