Segmentation fault with Ruby 2.1 and Rails 4.04

Issue #186 invalid
Ramona Maxwell
created an issue

PG was working fine until I upgraded my version of Ruby to 2.1 in order to use the Rails 4 branch of CommunityEngine. I saw the points about writing a script to test this w/o Active Record and am willing to do this if it's possible in a shared hosting envrionment with access to only my usr directory.

Comments (5)

  1. Michael Granger repo owner

    Is it possible that you haven't reinstalled some binary gems after upgrading your Ruby? Your backtrace includes the lines:

    /usr/lib64/libruby.so.1.9(+0x13b56f) [0x7fe08dcf156f]
    /usr/lib64/libruby.so.1.9(+0x13b5b1) [0x7fe08dcf15b1]
    /usr/lib64/libruby.so.1.9(rb_funcall2+0x111) [0x7fe08dd004e1]
    /home1/cassadyf/ruby/gems/gems/pg-0.17.1/lib/pg_ext.so(+0x9a3f) [0x7fe08bbf4a3f] pg_connection.c:188
    ruby(+0x150d9c) [0x7fe09a6bfd9c]
    

    The libruby.so.1.9 bits would seem to indicate that the pg gem is still linked against Ruby 1.9. It's always best to reinstall any gems if you switch Ruby versions, especially binary ones, since the ABI between major Ruby versions is likely to be different.

    If you reinstall and are still having difficulty, try running the minimal test case in the ticket submission guidelines, post the backtrace again, and we'll try and figure out what the issue is.

    Thanks!

  2. Ramona Maxwell reporter

    <html> <head> <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> </head> <body bgcolor="#FFFFFF" text="#000000"> <div class="moz-cite-prefix">Thanks - as I commented on the site that resolved the seg fault. However if you browse to ebspug.org it has a PhusionPassenger error which Bluehost just ID'd as:<br> <pre wrap="">/home1/cassadyf/ruby/gems/gems/pg-0.17.1/lib/pg_ext.so: undefined symbol: rb_funcallv

    They didn't provide more 411 than that so far, I'd asked them to check the server logs for a problem gem since the error rendered to the browser is non-specific. </pre> <div class="moz-signature"> <p style="font-size:11px;font-style:italic">Please visit <a href="http://www.SolverInc.com">SolverInc.com</a> or phone (650)800-3995<br> View my profile on <a href="http://www.LinkedIn.com/in/ramonamaxwell">LinkedIn</a> or follow me on Twitter <a href="http://twitter.com/intent/user?screen_name=sqlsolver">@sqlsolver</a></p> </div> On 7/6/2014 9:40 AM, Michael Granger wrote:<br> </div> <blockquote

  3. Michael Granger repo owner

    The rb_funcallv symbol is a function in Ruby itself, which is probably a sign that the version of Ruby that's running is different than was used to compile the gems.

    If I recall correctly, Passenger embeds Ruby in the webserver itself, so check to be sure you're running a version of Passenger that embeds the same version of Ruby as your gems were compiled with.

    Hope this helps!

  4. Log in to comment