Мы просто обновили наши виртуальные машины до того, что я считал идентичной конфигурацией ruby (через RVM ... Ruby 1.9.2, Rails 3.0.7, DataMapper 1.1.0 ). Самая большая разница заключалась в том, что мы перешли с MySQL 5.0 на 5.1.
По какой-то причине тот же самый код / database.yml, который работал на наших старых виртуальных машинах, теперь не работает на наших новых в точке, где он пытается подключиться к база данных.
Проблема в том, что этот YAML:
mysql_defaults: &mysql_defaults
adapter: mysql
encoding: UTF-8
username: user
password: pass
host: localhost
development:
<<: *mysql_defaults
database: devdb
production:
<<: *mysql_defaults
database: productiondb
host: master.db.site.com
просто расширяется до:
"mysql_defaults" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"localhost"
},
"development" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"localhost"
},
"production" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"localhost"
}
Вместо:
"mysql_defaults" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"localhost"
},
"development" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"localhost",
"database"=>"devdb"
},
"production" => {
"adapter"=>"mysql",
"encoding"=>"UTF-8",
"username"=>"user",
"password"=>"pass",
"host"=>"master.db.site.com",
"database"=>"productiondb"
}
Кто-нибудь сталкивался с этим раньше?
Согласно Gemfile.lock (я удалил его и снова запустил установку пакета, просто для здравомыслия), все установленные зависимости одинаковы (т.е. Gemfile.lock не различается между старой и новой установкой). Не работает и файл database.yml.