aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreileencodes <eileencodes@gmail.com>2018-02-20 12:58:01 -0500
committereileencodes <eileencodes@gmail.com>2018-02-21 16:01:35 -0500
commitbf0495de58ed4a0f4f5b5e079c3e758d6b6b132c (patch)
treed944a3899e4370c10b70614c4152657b869a63c5
parent23c5558f37c2c55807e7603415214f2b4b7b22c1 (diff)
downloadrails-bf0495de58ed4a0f4f5b5e079c3e758d6b6b132c.tar.gz
rails-bf0495de58ed4a0f4f5b5e079c3e758d6b6b132c.tar.bz2
rails-bf0495de58ed4a0f4f5b5e079c3e758d6b6b132c.zip
Delete default configuration
Because of this default configuration we're constantly checking if the database exists when looping through configurations. This is unnecessary and we should just delete it before we need to loop through configurations.
-rw-r--r--activerecord/lib/active_record/tasks/database_tasks.rb4
-rw-r--r--activerecord/test/cases/tasks/database_tasks_test.rb16
-rw-r--r--railties/lib/rails/application/configuration.rb1
3 files changed, 1 insertions, 20 deletions
diff --git a/activerecord/lib/active_record/tasks/database_tasks.rb b/activerecord/lib/active_record/tasks/database_tasks.rb
index d8e0cd1e30..0883e80d23 100644
--- a/activerecord/lib/active_record/tasks/database_tasks.rb
+++ b/activerecord/lib/active_record/tasks/database_tasks.rb
@@ -315,16 +315,12 @@ module ActiveRecord
environments << "test" if environment == "development"
ActiveRecord::Base.configurations.slice(*environments).each do |configuration_environment, configuration|
- next unless configuration["database"]
-
yield configuration, configuration_environment
end
end
def each_local_configuration
ActiveRecord::Base.configurations.each_value do |configuration|
- next unless configuration["database"]
-
if local_database?(configuration)
yield configuration
else
diff --git a/activerecord/test/cases/tasks/database_tasks_test.rb b/activerecord/test/cases/tasks/database_tasks_test.rb
index 21226352ff..da7ca27f13 100644
--- a/activerecord/test/cases/tasks/database_tasks_test.rb
+++ b/activerecord/test/cases/tasks/database_tasks_test.rb
@@ -124,14 +124,6 @@ module ActiveRecord
ActiveRecord::Base.connection_handler.stubs(:establish_connection)
end
- def test_ignores_configurations_without_databases
- @configurations["development"].merge!("database" => nil)
-
- ActiveRecord::Tasks::DatabaseTasks.expects(:create).never
-
- ActiveRecord::Tasks::DatabaseTasks.create_all
- end
-
def test_ignores_remote_databases
@configurations["development"].merge!("host" => "my.server.tld")
$stderr.stubs(:puts).returns(nil)
@@ -250,14 +242,6 @@ module ActiveRecord
ActiveRecord::Base.stubs(:configurations).returns(@configurations)
end
- def test_ignores_configurations_without_databases
- @configurations[:development].merge!("database" => nil)
-
- ActiveRecord::Tasks::DatabaseTasks.expects(:drop).never
-
- ActiveRecord::Tasks::DatabaseTasks.drop_all
- end
-
def test_ignores_remote_databases
@configurations[:development].merge!("host" => "my.server.tld")
$stderr.stubs(:puts).returns(nil)
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index 46ad3557e3..2c00d92f8f 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -178,6 +178,7 @@ module Rails
values.reverse_merge!(shared)
end
end
+ loaded_yaml.delete("default")
Hash.new(shared).merge(loaded_yaml)
elsif ENV["DATABASE_URL"]
# Value from ENV['DATABASE_URL'] is set to default database connection