segfaults in production with 0.10.2

262 views
Skip to first unread message

sasa555

unread,
Sep 15, 2012, 4:15:59 AM9/15/12
to therub...@googlegroups.com
Hello,

we have been using therubyracer 0.7.5 for more than a year in the production. This has been working flawlessly under heavy load. 

Yesterday, we upgraded to version 0.10.2. The gem still works, but after some time, segmentation fault occurs:

bundle/ruby/1.9.1/gems/therubyracer-0.10.1/lib/v8/portal/proxies.rb:145: [BUG] Segmentation fault
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0031 p:---- s:0205 b:0205 l:000204 d:000204 CFUNC  :delete
c:0030 p:0045 s:0201 b:0201 l:000200 d:000200 METHOD bundle/ruby/1.9.1/gems/therubyracer-0.10.1/lib/v8/portal/proxies.rb:145
c:0029 p:---- s:0196 b:0196 l:000195 d:000195 FINISH
c:0028 p:---- s:0194 b:0194 l:000193 d:000193 CFUNC  :read
c:0027 p:0015 s:0189 b:0189 l:000188 d:000188 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/utils/unseekable_socket.rb:137
c:0026 p:0241 s:0184 b:0184 l:000183 d:000183 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/message_channel.rb:242
c:0025 p:0021 s:0177 b:0177 l:000176 d:000176 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_request_handler.rb:567
c:0024 p:0222 s:0168 b:0168 l:000167 d:000167 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_request_handler.rb:472
c:0023 p:0175 s:0154 b:0154 l:000153 d:000153 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_request_handler.rb:274
c:0022 p:0188 s:0146 b:0146 l:000145 d:000145 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/rack/application_spawner.rb:206
c:0021 p:0084 s:0134 b:0134 l:000121 d:000133 BLOCK  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/rack/application_spawner.rb:171
c:0020 p:0094 s:0131 b:0131 l:000130 d:000130 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/utils.rb:470
c:0019 p:0063 s:0122 b:0122 l:000121 d:000121 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/rack/application_spawner.rb:166
c:0018 p:0178 s:0113 b:0113 l:000112 d:000112 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server.rb:357
c:0017 p:0048 s:0102 b:0102 l:000101 d:000101 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server.rb:206
c:0016 p:0362 s:0095 b:0095 l:000094 d:000094 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server.rb:180
c:0015 p:0010 s:0086 b:0086 l:000085 d:000085 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/rack/application_spawner.rb:129
c:0014 p:0082 s:0081 b:0081 l:000062 d:000080 BLOCK  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/spawn_manager.rb:253
c:0013 p:0078 s:0078 b:0078 l:000077 d:000077 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server_collection.rb:132
c:0012 p:0027 s:0073 b:0073 l:000062 d:000072 BLOCK  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/spawn_manager.rb:246
c:0011 p:0014 s:0071 b:0071 l:000065 d:000070 BLOCK  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server_collection.rb:82
c:0010 p:0019 s:0069 b:0069 l:000068 d:000068 METHOD <internal:prelude>:10
c:0009 p:0013 s:0066 b:0066 l:000065 d:000065 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server_collection.rb:79
c:0008 p:0131 s:0063 b:0063 l:000062 d:000062 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/spawn_manager.rb:244
c:0007 p:0242 s:0054 b:0054 l:000053 d:000053 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/spawn_manager.rb:137
c:0006 p:0066 s:0050 b:0050 l:000049 d:000049 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/spawn_manager.rb:275
c:0005 p:0178 s:0041 b:0041 l:000040 d:000040 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server.rb:357
c:0004 p:0048 s:0030 b:0030 l:000029 d:000029 METHOD /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/lib/phusion_passenger/abstract_server.rb:206
c:0003 p:0768 s:0023 b:0023 l:000dc8 d:000b90 EVAL   /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.17/helper-scripts/passenger-spawn-server:99
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:000dc8 d:000dc8 TOP

Once we reverted back to 0.7.5 the segfaults stopped occurring.

The server is ran on the Ubuntu 12.04, and hosted behind Apache / Phusion Passenger combo.

Any suggestions?

Best regards,
Sasa

Charles Lowell

unread,
Sep 17, 2012, 2:46:20 PM9/17/12
to therub...@googlegroups.com
Sasha,

010.x has some fundamental flaws with the way it manages memory that have been addressed on master (0.11.x)

I would try using one of the pre-releases and see if this solves your problem for you.

cheers,
Charles
Charles Lowell 
thefrontside.net | twitter: @cowboyd | github: cowboyd




sasa

unread,
Sep 20, 2012, 3:31:50 PM9/20/12
to therub...@googlegroups.com
Thank you!
I'll wait till the release comes out and give it a try.

Best regards,
Sasa
Reply all
Reply to author
Forward
0 new messages