【问题标题】:mysql2 Segmentation fault at 0x0000000000000000mysql2 0x0000000000000000 处的分段错误
【发布时间】:2020-08-20 00:46:39
【问题描述】:

我从 FreeBSD 11.3 上的端口安装了 redmine 现在尝试从浏览器访问它并崩溃。 错误日志显示以下内容。

    /usr/local/lib/ruby/gems/2.6/gems/activesupport-4.2.11.1/lib/active_support/core_ext/object/duplicable.rb:111: warning: BigDecimal.new is deprecated; use BigDecimal() method instead.
    /usr/local/lib/ruby/gems/2.6/gems/mysql2-0.4.10/lib/mysql2/mysql2.so: [BUG] Segmentation fault at 0x0000000000000000
    ruby 2.6.6p146 (2020-03-31 revision 67876) [amd64-freebsd11]
-- Control frame information -----------------------------------------------
c:0027 p:-4313666350 s:0131 e:000130 TOP    [FINISH]
c:0026 p:---- s:0128 e:000127 CFUNC  :require
c:0025 p:0261 s:0123 e:000122 TOP    /usr/local/lib/ruby/gems/2.6/gems/mysql2-0.4.10/lib/mysql2.rb:31 [FINISH]
c:0024 p:---- s:0119 e:000118 CFUNC  :require
c:0023 p:0033 s:0114 e:000113 BLOCK  /usr/local/lib/ruby/gems/2.6/gems/bundler-2.0.2/lib/bundler/runtime.rb:81 [FINISH]

输出要长得多,我把它缩短了,这是堆栈中最顶层的错误。 我不确定哪个社区会更好地解决这个问题,所以我决定先在这里提问。

【问题讨论】:

  • 这看起来很糟糕! [BUG] 0x0000000000000000 处的分段错误,您可以尝试升级 mysql 并升级 mysql gem,或者如果您已经在最新版本,请降级?

标签: mysql ruby rubygems redmine


【解决方案1】:

我今天在 ubuntu 20.04 和 msql2 -v 0.5.1 上遇到了类似的问题。解决问题:

sudo apt remove libmysqlclient-dev
sudo apt install libmariadbclient-dev
gem install mysql2 -v '0.5.1' 

这里有更详细的描述: https://github.com/brianmario/mysql2/issues/1075

【讨论】:

  • 在 ubuntu 20.04 机器上使用 ruby​​ 2.7.2 和 mysq2 0.5.3 gem 时遇到此问题。 @Vitya 解决方案有效。谢谢!
猜你喜欢
  • 2023-03-16
  • 2022-12-17
  • 2012-03-28
  • 2011-07-17
  • 1970-01-01
  • 2013-09-15
  • 2021-03-03
  • 2018-11-18
相关资源
最近更新 更多