【问题标题】:Rake db:create causes segmentation fault on Ubuntu 18.04Rake db:create 在 Ubuntu 18.04 上导致分段错误
【发布时间】:2019-12-06 09:18:45
【问题描述】:

我正在Ubuntu 18.04 上设置一个rails 应用程序。我的红宝石版本是2.1.4。 Postgres 版本是(PostgreSQL) 10.10

我使用 rails Gemfile 安装了 gems。

以下是我在执行rake db:create时遇到的错误sn-p。

/home/nishant/.rvm/gems/ruby-2.1.4/gems/puma-2.9.2/lib/puma/puma_http11.so: [BUG] Segmentation fault at 0x00000000000000
ruby 2.1.4p265 (2014-10-27 revision 48166) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0036 p:-11855247756540 s:0130 e:000129 TOP    [FINISH]
c:0035 p:---- s:0128 e:000127 CFUNC  :require

任何rake 命令都会出现此错误。

谁能为此提供解决方案/修复?

【问题讨论】:

  • 你能试试另一个 Ruby 版本吗? Ruby 2.1.9 是 2.1 系列中的最新版本,或者 2.5.7 是 2.6 之前的最新版本。请尝试查找该系列中的最新版本。它将为此类错误提供最多的补丁。
  • 顺便说一句。这也可能是您的 Puma 安装中的问题。您可能想要重建 Puma gem,或者尝试它的另一个版本,因为错误在 Puma 库 puma_http11.so 中。

标签: ruby-on-rails ruby segmentation-fault rake ubuntu-18.04


【解决方案1】:

您应该尝试在您的项目终端上运行这些命令:

gem list | cut -d" " -f1 | xargs gem uninstall -aIx
gem install bundler

最后运行:

bundle install

一般来说,它会重建所有项目 gem。

【讨论】:

  • 执行上述命令会出现错误gem "test-unit" cannot be uninstalled because it is a default gem。我也应该删除默认宝石吗?
  • 好的,我按照上述说明进行操作(包括删除默认宝石)。仍然得到同样的错误。 :( 问题出在 puma 上。puma -v 导致分段错误。
【解决方案2】:

正如 Casper 在对该问题的评论中指出的那样,通过安装更新​​版本的 puma 服务器解决了该问题。我安装了 puma 版本 3.8.2。有了puma -v,就可以提供正确的输出。 rake db:create 也有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-01
    • 2013-03-06
    • 1970-01-01
    • 2012-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多