我在 AWS EC2 中有一个我们的应用程序的生产实例。我的团队在 Fedora 18 上进行本地开发。最近,在将代码推送到生产环境时,我们注意到在运行“rake assets:precompile”或“script/delayed_job start|stop”时出现分段错误。这些在我们的开发机器上运行良好。
为了尝试隔离问题,我们将 RBENV 从 1.9.3-p327 升级到 RBENV 1.9.3-p385。然后,为了尝试隔离 RBENV,我创建了一个新用户“testuser”,并使用 1.9.3-p385 全新安装了 RVM。同样的问题。
段错误细节似乎指向“therubyracer”宝石。我找不到任何看起来像我们的问题的信息。
gem install minitest
WARNING!! No private key specified, gem will not be signed!
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/therubyracer-0.11.3/lib/v8/init.so: [BUG] Segmentation fault
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]
-- Control frame information -----------------------------------------------
<snip>
-- Ruby level backtrace information ----------------------------------------
script/delayed_job:3:in `<main>'
/home/testuser/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/testuser/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/testuser/apps/pharos/config/environment.rb:2:in `<top (required)>'
/home/testuser/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/testuser/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/testuser/apps/pharos/config/application.rb:7:in `<top (required)>'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler.rb:128:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:55:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:55:in `each'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:66:in `block in require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:66:in `each'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/bundler-1.2.4/lib/bundler/runtime.rb:68:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs.rb:4:in `<top (required)>'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs.rb:5:in `<module:ExecJS>'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs/runtimes.rb:50:in `autodetect'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs/runtimes.rb:56:in `best_available'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs/runtimes.rb:56:in `find'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs/runtimes.rb:56:in `each'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/execjs-1.4.0/lib/execjs/ruby_racer_runtime.rb:99:in `available?'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:236:in `load_dependency'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `block in require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/therubyracer-0.11.3/lib/v8.rb:4:in `<top (required)>'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:236:in `load_dependency'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `block in require'
/home/testuser/.rvm/gems/ruby-1.9.3-p385/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
<snip>
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html