From 0169c93b339b31d51ba2fc18ac7e6850a343923a Mon Sep 17 00:00:00 2001 From: John Hawthorn Date: Wed, 7 Aug 2019 14:52:03 -0700 Subject: [PATCH] Merge pull request #36883 from jhawthorn/schema_sha_fix Fix test schema loading for multi-db --- activerecord/lib/active_record/migration.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/activerecord/lib/active_record/migration.rb b/activerecord/lib/active_record/migration.rb index 13ac515ffc9d9..b8df9b3199d4a 100644 --- a/activerecord/lib/active_record/migration.rb +++ b/activerecord/lib/active_record/migration.rb @@ -591,7 +591,11 @@ def load_schema_if_pending! current_config = Base.connection_config all_configs = ActiveRecord::Base.configurations.configs_for(env_name: Rails.env) - unless all_configs.all? { |config| Tasks::DatabaseTasks.schema_up_to_date?(config.config) } + needs_update = !all_configs.all? do |db_config| + Tasks::DatabaseTasks.schema_up_to_date?(db_config.config, ActiveRecord::Base.schema_format, nil, Rails.env, db_config.spec_name) + end + + if needs_update # Roundtrip to Rake to allow plugins to hook into database initialization. root = defined?(ENGINE_ROOT) ? ENGINE_ROOT : Rails.root FileUtils.cd(root) do