diff options
| -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  | 
