Heroku db:推送失败并出现段错误

问题描述:

我为Rails 3.1,Ruby 1.9.2安装了一个新的Heroku应用程序。问题在于'heroku db:push'填充数据库(已经适当模式化 - 现在唯一的问题是获取一些数据)。它失败,出现以下报告:Heroku db:推送失败并出现段错误

/Users/upstill/.rvm/gems/ruby-1.9.2-p290/gems/sqlite3-1.3.5/lib/sqlite3/sqlite3_native.bundle:[BUG]段故障

红宝石1.8.7(2010-01-10 PATCHLEVEL 249)[万向darwin11.0]

中止陷阱:6

这是令人费解的原因有两个:第一,我我在本地和heroku上使用postgresql数据库(在config/database.yml中正式声明)。和两个,红宝石1.8.7有什么关系? rvm设置为1.9.2,这是在我的路上,然而heroku试图运行它?是什么赋予了?

谢谢你,史蒂夫 Upstill

+1

我得到同样的错误使用Ruby 1.9.3-P125,当我尝试回滚sqlite3的宝石版本1.3.3和1.3.4没有变化,除了我。我也很困惑这个红宝石1.8.7参考在命令行输出。我甚至没有安装红宝石1.8.7。 – 2012-02-26 17:12:00

+0

我怀疑这是因为Heroku Toolbelt没有预料到shell游戏rvm的戏剧,而是天真地期待在我的情况下,我可以使用'heroku db:pull'在Ruby 1.9.3(但不是1.8.7或2.0)中工作,这可能是因为我安装了Heroku Toolbelt当我在1.9.3上时,当我在Ruby 2.0下运行'heroku db:pull'时,出现了SEGFAULT错误: '/Users/adam/.rvm/gems/ruby-2.0。 0-p0/gems/sqlite3-1.3.7/lib/sqlite3/sqlite3_native.bundle:[BUG]分割错误 ruby​​ 1.9.3p194(2012-04-20修订版35410)[x86_64-darwin10.8.0]' – 2013-06-18 21:57:17

+0

水龙头和db:push和db:pull很快会被替换。如果有人想尽早尝试,我已经打开了一个问题https://github.com/heroku/heroku-pg-extras/issues/42 – Will 2013-09-03 22:11:27

也有这个问题,这是非常讨厌,但最终我得到它的工作。我已经安装了工具区,但它开始工作,一旦我这样做:

gem install heroku 
sudo gem install taps 

是的,工具区已经安装了,但我认为这真的修好了。 很多人都有这个问题,你并不孤单。

希望这有助于(:

+0

这固定了问题对我来说。 – ewalk 2012-03-16 12:21:26

+0

也为我工作! – 2012-03-25 19:26:48

+1

我不知道为什么这应该工作,但它确实。谢谢。 – barelyknown 2012-06-15 22:13:06

您的代码试图运行使用Ruby 1.8.7 1.9.2版本的SQLite。

我建议在尝试推送前切换到1.9.2。

rvm use 1.9.2-p290 
heroku db:push 

理想情况下,您希望切换到1.9.2句号。

+2

这是奇怪的事情:我使用1.9.2,据rvm 。另外,我的数据库两端都是Postgresql,所以为什么它使用Mysql进行操作? – 2012-02-22 20:20:36

+0

水龙头依赖于SQLite – 2012-02-22 21:12:51

+0

...和(水龙头)有必要通过'heroku db:push'获取数据库进出Heroku http://devcenter.heroku.com/articles/taps – 2012-02-24 13:48:33