diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2016-02-23 08:12:54 -0800 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2016-02-23 08:13:09 -0800 |
commit | 79887593c18919fed49f441d64236362cb755872 (patch) | |
tree | ac79183e1bf9d6ec978ced78f25bc38702a46bbd /activerecord/lib | |
parent | b2c2d32908beed678b087ec4ed735cc9ff87ad7a (diff) | |
download | rails-79887593c18919fed49f441d64236362cb755872.tar.gz rails-79887593c18919fed49f441d64236362cb755872.tar.bz2 rails-79887593c18919fed49f441d64236362cb755872.zip |
reestablish previous connection after creating all databases
creating all databases mutates the connection pool. This patch restores
the connection pool to the connection spec established before creating
all databases. Fixes #23279
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/tasks/database_tasks.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/tasks/database_tasks.rb b/activerecord/lib/active_record/tasks/database_tasks.rb index 8f52e9068a..7dc41fa98c 100644 --- a/activerecord/lib/active_record/tasks/database_tasks.rb +++ b/activerecord/lib/active_record/tasks/database_tasks.rb @@ -116,7 +116,11 @@ module ActiveRecord end def create_all + old_pool = ActiveRecord::Base.connection_handler.retrieve_connection_pool(ActiveRecord::Base) each_local_configuration { |configuration| create configuration } + if old_pool + ActiveRecord::Base.connection_handler.establish_connection(ActiveRecord::Base, old_pool.spec) + end end def create_current(environment = env) |