Project

General

Profile

Actions

Bug #3174

closed

segmentation fault at running Array method each

Added by ingo (Ingo M) almost 14 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
ruby -v:
ruby 1.9.1p378 (2010-01-10 revision 26273) [i686-linux]
[ruby-core:29621]

Description

=begin
Bug happens when using method each at a large array

/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26: [BUG] Segmentation fault
ruby 1.9.1p378 (2010-01-10 revision 26273) [i686-linux]

-- control frame ----------
c:0009 p:0046 s:0031 b:0023 l:000f14 d:000022 BLOCK /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26
c:0008 p:---- s:0020 b:0020 l:000019 d:000019 FINISH
c:0007 p:---- s:0018 b:0018 l:000017 d:000017 CFUNC :each
c:0006 p:0153 s:0015 b:0015 l:000f14 d:000014 BLOCK /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:25
c:0005 p:---- s:0011 b:0011 l:000010 d:000010 FINISH
c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC :each
c:0003 p:0106 s:0006 b:0006 l:000f14 d:00163c EVAL /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:15
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:000f14 d:000f14 TOP

/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26: [BUG] object allocation during garbage collection phase
ruby 1.9.1p378 (2010-01-10 revision 26273) [i686-linux]

-- control frame ----------
c:0009 p:0046 s:0031 b:0023 l:000f14 d:000022 BLOCK /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26
c:0008 p:---- s:0020 b:0020 l:000019 d:000019 FINISH
c:0007 p:---- s:0018 b:0018 l:000017 d:000017 CFUNC :each
c:0006 p:0153 s:0015 b:0015 l:000f14 d:000014 BLOCK /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:25
c:0005 p:---- s:0011 b:0011 l:000010 d:000010 FINISH
c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC :each
c:0003 p:0106 s:0006 b:0006 l:000f14 d:00163c EVAL /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:15
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:000f14 d:000f14 TOP

-- Ruby level backtrace information-----------------------------------------
/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26:in block (2 levels) in <main>' /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:25:in each'
/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:25:in block in <main>' /home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:15:in each'
/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:15:in `'

-- C level backtrace information -------------------------------------------
0xb77de340 /usr/lib/libruby.so.1.9(rb_vm_bugreport+0x60) [0xb77de340]
0xb76f9401 /usr/lib/libruby.so.1.9(+0x46401) [0xb76f9401]
0xb76f949a /usr/lib/libruby.so.1.9(rb_bug+0x3a) [0xb76f949a]
0xb770cadc /usr/lib/libruby.so.1.9(rb_newobj+0xdc) [0xb770cadc]
0xb76d4045 /usr/lib/libruby.so.1.9(+0x21045) [0xb76d4045]
0xb76d42b0 /usr/lib/libruby.so.1.9(+0x212b0) [0xb76d42b0]
0xb76d48be /usr/lib/libruby.so.1.9(rb_ary_new+0x1e) [0xb76d48be]
0xb77cdd86 /usr/lib/libruby.so.1.9(rb_make_backtrace+0x36) [0xb77cdd86]
0xb77de317 /usr/lib/libruby.so.1.9(rb_vm_bugreport+0x37) [0xb77de317]
0xb76f9401 /usr/lib/libruby.so.1.9(+0x46401) [0xb76f9401]
0xb76f949a /usr/lib/libruby.so.1.9(rb_bug+0x3a) [0xb76f949a]
0xb778498c /usr/lib/libruby.so.1.9(+0xd198c) [0xb778498c]
0xb783d40c [0xb783d40c]
0xb770b0f6 /usr/lib/libruby.so.1.9(+0x580f6) [0xb770b0f6]
0xb770b396 /usr/lib/libruby.so.1.9(+0x58396) [0xb770b396]
0xb77ca475 /usr/lib/libruby.so.1.9(rb_thread_mark+0x65) [0xb77ca475]
0xb770b2a3 /usr/lib/libruby.so.1.9(+0x582a3) [0xb770b2a3]
0xb77ca34d /usr/lib/libruby.so.1.9(+0x11734d) [0xb77ca34d]
0xb778af80 /usr/lib/libruby.so.1.9(st_foreach+0x50) [0xb778af80]
0xb77ca810 /usr/lib/libruby.so.1.9(rb_vm_mark+0x40) [0xb77ca810]
0xb770b2a3 /usr/lib/libruby.so.1.9(+0x582a3) [0xb770b2a3]
0xb770b90c /usr/lib/libruby.so.1.9(+0x5890c) [0xb770b90c]
0xb770c745 /usr/lib/libruby.so.1.9(+0x59745) [0xb770c745]
0xb779b34c /usr/lib/libruby.so.1.9(+0xe834c) [0xb779b34c]
0xb779b775 /usr/lib/libruby.so.1.9(+0xe8775) [0xb779b775]
0xb779b983 /usr/lib/libruby.so.1.9(rb_str_buf_append+0x73) [0xb779b983]
0xb779f5ee /usr/lib/libruby.so.1.9(rb_str_append+0x5e) [0xb779f5ee]
0xb77ce6e6 /usr/lib/libruby.so.1.9(+0x11b6e6) [0xb77ce6e6]
0xb77d410b /usr/lib/libruby.so.1.9(+0x12110b) [0xb77d410b]
0xb77db6f3 /usr/lib/libruby.so.1.9(rb_yield+0x1c3) [0xb77db6f3]
0xb76d3dd2 /usr/lib/libruby.so.1.9(rb_ary_each+0x52) [0xb76d3dd2]
0xb77cb26d /usr/lib/libruby.so.1.9(+0x11826d) [0xb77cb26d]
0xb77cb5f4 /usr/lib/libruby.so.1.9(+0x1185f4) [0xb77cb5f4]
0xb77d82d4 /usr/lib/libruby.so.1.9(+0x1252d4) [0xb77d82d4]
0xb77d0b3d /usr/lib/libruby.so.1.9(+0x11db3d) [0xb77d0b3d]
0xb77d410b /usr/lib/libruby.so.1.9(+0x12110b) [0xb77d410b]
0xb77db6f3 /usr/lib/libruby.so.1.9(rb_yield+0x1c3) [0xb77db6f3]
0xb76d3dd2 /usr/lib/libruby.so.1.9(rb_ary_each+0x52) [0xb76d3dd2]
0xb77cb26d /usr/lib/libruby.so.1.9(+0x11826d) [0xb77cb26d]
0xb77cb5f4 /usr/lib/libruby.so.1.9(+0x1185f4) [0xb77cb5f4]
0xb77d82d4 /usr/lib/libruby.so.1.9(+0x1252d4) [0xb77d82d4]
0xb77d0b3d /usr/lib/libruby.so.1.9(+0x11db3d) [0xb77d0b3d]
0xb77d410b /usr/lib/libruby.so.1.9(+0x12110b) [0xb77d410b]
0xb77d437b /usr/lib/libruby.so.1.9(rb_iseq_eval_main+0xab) [0xb77d437b]
0xb76fb7a7 /usr/lib/libruby.so.1.9(ruby_exec_node+0xb7) [0xb76fb7a7]
0xb76fcdb6 /usr/lib/libruby.so.1.9(ruby_run_node+0x56) [0xb76fcdb6]
0x80486a8 ruby(main+0x68) [0x80486a8]
0xb7567b86 /lib/libc.so.6(__libc_start_main+0xe6) [0xb7567b86]
0x80485a1 ruby() [0x80485a1]

[NOTE]
You may encounter a bug of Ruby interpreter. Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
=end


Files

reproduce_crash.rb (1.01 KB) reproduce_crash.rb ingo (Ingo M), 04/19/2010 08:49 PM
reproduce_crash.rb (1.03 KB) reproduce_crash.rb modified script tenderlovemaking (Aaron Patterson), 04/20/2010 02:25 AM
Actions #1

Updated by matz (Yukihiro Matsumoto) almost 14 years ago

=begin
Hi,

In message "Re: [ruby-core:29621] [Bug #3174] segmentation fault at running Array method each"
on Mon, 19 Apr 2010 16:42:42 +0900, Ingo Meierhoff writes:

|Bug #3174: segmentation fault at running Array method each
|http://redmine.ruby-lang.org/issues/show/3174

|Bug happens when using method each at a large array
|
|/home/teddy/daten/workspace/tsm_administration/scripts/MIGRATION_crash.rb:26: [BUG] Segmentation fault
|ruby 1.9.1p378 (2010-01-10 revision 26273) [i686-linux]

Can we see the error reproducing program (and input data)?

						matz.

=end

Actions #2

Updated by nobu (Nobuyoshi Nakada) almost 14 years ago

  • Status changed from Open to Feedback

=begin
Seems like a third party's issue.
What extension libraries do you use?
=end

Actions #3

Updated by ingo (Ingo M) almost 14 years ago

=begin
I'm using the pg gem (0.9.0) to copy data from one database to another

with the attached script I was able to reproduce the error

=end

Actions #4

Updated by tenderlovemaking (Aaron Patterson) almost 14 years ago

=begin
I was able to run the script (with slight modifications) from Ruby 1.9.2 trunk and had no crashes. I've attached my version of the script.

Here is the output from my run:

$ ruby reproduce_crash.rb
create table
NOTICE: table "crash_table" does not exist, skipping
NOTICE: table "crash_table" does not exist, skipping
fill table
queries
server_a : Session : 250000
server_b : Session : 250000
server_c : Session : 250000
server_d : Session : 250000
server_e : Session : 250000
$ ruby -v
ruby 1.9.2dev (2010-04-17 trunk 27378) [x86_64-darwin10.2.0]
$
=end

Actions #5

Updated by ingo (Ingo M) almost 14 years ago

=begin
if you would like to reproduce it with 1.9.1p378 you have to ensure that your postgres db is fast enough
(for this reason I used in postgres.conf:
fsync = off
synchronous_commit = off
wal_writer_delay = 2s
)

until now I was not able to reproduce the error using version 1.9.2 so it seems to be fixed
or my system is not fast enough
$ ruby -v
ruby 1.9.2dev (2010-04-22 trunk 27435) [i686-linux]
=end

Actions #6

Updated by jeremyevans0 (Jeremy Evans) over 4 years ago

  • Description updated (diff)
  • Status changed from Feedback to Closed
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0