1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

implements ActiveRecord::Base.connection_config to be able to check the configuration of the current connection at runtime

This commit is contained in:
Xavier Noria 2011-03-05 01:10:00 +01:00
parent 28f1c21b50
commit 3b10b8a201
3 changed files with 18 additions and 0 deletions

View file

@ -1,5 +1,8 @@
*Rails 3.1.0 (unreleased)*
* The configuration for the current database connection is now accessible via
ActiveRecord::Base.connection_config. [fxn]
* limits and offsets are removed from COUNT queries unless both are supplied.
For example:

View file

@ -89,6 +89,16 @@ module ActiveRecord
retrieve_connection
end
# Returns the configuration of the associated connection as a hash:
#
# ActiveRecord::Base.connection_config
# # => {:pool=>5, :timeout=>5000, :database=>"db/development.sqlite3", :adapter=>"sqlite3"}
#
# Please use only for reading.
def connection_config
connection_pool.spec.config
end
def connection_pool
connection_handler.retrieve_connection_pool(self)
end

View file

@ -94,6 +94,11 @@ class PooledConnectionsTest < ActiveRecord::TestCase
ActiveRecord::Base.connection_handler = old_handler
end
def test_connection_config
ActiveRecord::Base.establish_connection(@connection)
assert_equal @connection, ActiveRecord::Base.connection_config
end
def test_with_connection_nesting_safety
ActiveRecord::Base.establish_connection(@connection.merge({:pool => 1, :wait_timeout => 0.1}))