2016-01-20 1 views
2

В настоящее время я изменил мой формат ActiveRecord схемы для :sql и при миграции (rake db:migrate), я получаю следующее сообщение об ошибке без реального объяснения того, что случилось:грабли БД: мигрировать проваливается в БД: структура: дамп без выхода ошибки

$ bundle exec rake db:migrate 
rake aborted! 
Error dumping database 

Tasks: TOP => db:structure:dump 
(See full trace by running task with --trace) 

Я использую Rails 4.2.4 и PostgreSQL 9.4.

ответ

1

После выполнения отладочного следа в коде Rails я наконец обнаружил ошибку.

Команда pg_dump выполняется в activerecord/lib/active_record/tasks/postgresql_database_tasks.rb#54. После печати результата выполнения команды с $? я понял, что он возвращает код выхода 127, что означает, что command was not found.

Оказалось, что команды pg_dump не было в моем исполнении PATH. я просто добавил его, создав символическую ссылку, и все это работало отлично:

ln -s /opt/local/lib/postgresql94/bin/pg_dump /usr/local/bin

Примечание: Я также обнаружил, что проблема не распечатав ошибка уже исправлена ​​в Rails 4.2.5

Смежные вопросы