大约30分钟前推送到heroku后,我们似乎无法在rails控制台中执行任何操作或执行迁移。
我能够heroku run rake db:migrate
它似乎开始了:
heroku run rake db:migrate
Running rake db:migrate on app... up, run.8092
ActiveRecord::SchemaMigration Load (1.4ms) SELECT "schema_migrations".* FROM "schema_migrations"
Migrating to AddQuestionsCountToCampaigns (20160215204320)
(0.9ms) BEGIN
== 20160215204320 AddQuestionsCountToCampaigns: migrating =====================
-- add_column(:campaigns, :questions_count, :integer)
但它只是挂在那里,从未真正完成。
同样我可以连接到rails c,但我无法执行Campaign.new
或Campaign.last
之类的操作。它只是挂在那里:
Loading production environment (Rails 4.2.0)
irb(main):001:0> Campaign.new
从来没有做过任何事情。
任何想法可能会发生什么?分期工作正常。日志似乎也在工作,我没有看到任何崩溃。我也试过了heroku restart
,这似乎没什么帮助。
添加迁移:
class AddQuestionsCountToCampaigns < ActiveRecord::Migration
def change
add_column :campaigns, :questions_count, :integer
add_index :campaigns, :questions_count
end
end
答案 0 :(得分:5)
供将来参考:
麻烦在于打开了太多pg连接(在rails控制台中运行`Campaign.count失败:说连接太多了。)
解决方案是运行pg:killall
并重新运行迁移