diff options
Diffstat (limited to 'activerecord')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb | 2 | ||||
-rw-r--r-- | activerecord/lib/active_record/connection_handling.rb | 5 |
2 files changed, 4 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 4ba8ee2706..33f68d0b97 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb @@ -909,6 +909,8 @@ module ActiveRecord # to optimise for. def retrieve_connection_pool(spec_name) owner_to_pool.fetch(spec_name) do + # Check if a connection was previously established in an ancestor process, + # which may have been forked. if ancestor_pool = pool_from_any_process_for(spec_name) # A connection was established in an ancestor process that must have # subsequently forked. We can't reuse the connection, but we can copy diff --git a/activerecord/lib/active_record/connection_handling.rb b/activerecord/lib/active_record/connection_handling.rb index ba763149cc..a628ee4dbd 100644 --- a/activerecord/lib/active_record/connection_handling.rb +++ b/activerecord/lib/active_record/connection_handling.rb @@ -45,7 +45,7 @@ module ActiveRecord # The exceptions AdapterNotSpecified, AdapterNotFound and +ArgumentError+ # may be returned on an error. def establish_connection(spec = nil) - raise RuntimeError, "Anonymous class is not allowed." unless name + raise "Anonymous class is not allowed." unless name spec ||= DEFAULT_ENV.call.to_sym resolver = ConnectionAdapters::ConnectionSpecification::Resolver.new configurations @@ -93,8 +93,7 @@ module ActiveRecord attr_writer :connection_specification_name - # Return the specification id from this class otherwise look it up - # in the parent. + # Return the specification name from the current class or its parent. def connection_specification_name unless defined?(@connection_specification_name) @connection_specification_name = self == Base ? "primary" : superclass.connection_specification_name |