Bug #5252
closedSegmentation Fault
Description
I am running a rake task to query data from a oracle database using C extension, I am seeing segmentation fault happening randomly.
ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
I have tried running the rake task inside the gdb, I have obtained the stack trace using the gdb. Can anyone help me understand the stack trace?.
(gdb) run /usr/bin/rake cassandra:load_data SETTINGS_FILE=loader_files/68865463.yaml --trace
Starting program: ruby /usr/bin/rake cassandra:load_data SETTINGS_FILE=loader_files/68865463.yaml --trace
[Thread debugging using libthread_db enabled]
[New Thread 46912499556288 (LWP 30944)]
[New Thread 1073756512 (LWP 30947)]
** Invoke cassandra:load_data (first_time)
** Invoke environment (first_time)
** Execute environment
[New Thread 1074284896 (LWP 30948)]
** Execute cassandra:load_data
[New Thread 1082677600 (LWP 30949)]
[New Thread 1091070304 (LWP 30950)]
[Thread 1091070304 (LWP 30950) exited]
[New Thread 1099463008 (LWP 30951)]
"Finished pulling data"
[Thread 1099463008 (LWP 30951) exited]
[New Thread 1099463008 (LWP 30952)]
[Thread 1099463008 (LWP 30952) exited]
[New Thread 1099463008 (LWP 30995)]
[Thread 1099463008 (LWP 30995) exited]
[New Thread 1091070304 (LWP 30996)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912499556288 (LWP 30944)]
0x00002aaaaab1b272 in finalize_list (objspace=0x503740, p=0xc0bb358) at gc.c:1814
1814 slot->limit--;
(gdb) bt full
#0 0x00002aaaaab1b272 in finalize_list (objspace=0x503740, p=0xc0bb358) at gc.c:1814
slot = (struct heaps_slot *) 0x2aaab9213850
tmp = (RVALUE *) 0xc0bb358
#1 0x00002aaaaab1c6f4 in rb_gc_finalize_deferred () at gc.c:2621
No locals.
#2 0x00002aaaaac20395 in rb_threadptr_execute_interrupts_rec (th=0x5033c0, sched_depth=0) at thread.c:1305
wait_event__ = Variable "wait_event__" is not available.
(gdb) backtrace
#0 0x00002aaaaab1b272 in finalize_list (objspace=0x503740, p=0xc0bb358) at gc.c:1814
#1 0x00002aaaaab1c6f4 in rb_gc_finalize_deferred () at gc.c:2621
#2 0x00002aaaaac20395 in rb_threadptr_execute_interrupts_rec (th=0x5033c0, sched_depth=0) at thread.c:1305
#3 0x00002aaaaac11162 in vm_call_method (th=0x5033c0, cfp=0x2aaaadd34670, num=1, blockptr=0x1, flag=0, id=60584, me=0x17646e0, recv=198781640) at vm_insnhelper.c:670
#4 0x00002aaaaac1477d in vm_exec_core (th=0x5033c0, initial=Variable "initial" is not available.
) at insns.def:1006
#5 0x00002aaaaac192ba in vm_exec (th=0x5033c0) at vm.c:1147
#6 0x00002aaaaac19c9c in invoke_block_from_c (th=0x5033c0, block=0x24a6eb0, self=5653000, argc=Variable "argc" is not available.
) at vm.c:558
#7 0x00002aaaaac1a071 in rb_vm_invoke_proc (th=0x5033c0, proc=0x24a6eb0, self=5653000, argc=2, argv=0x2aaaadc35200, blockptr=0x0) at vm.c:604
#8 0x00002aaaaab11d0d in proc_call (argc=2, argv=0x2aaaadc35200, procval=Variable "procval" is not available.
) at proc.c:556
#9 0x00002aaaaac10f85 in vm_call_method (th=0x5033c0, cfp=0x2aaaadd34988, num=2, blockptr=0x1, flag=0, id=5912, me=0x5fc6d0, recv=35624360) at vm_insnhelper.c:402
#10 0x00002aaaaac1477d in vm_exec_core (th=0x5033c0, initial=Variable "initial" is not available.
) at insns.def:1006
#11 0x00002aaaaac192ba in vm_exec (th=0x5033c0) at vm.c:1147
#12 0x00002aaaaac19c9c in invoke_block_from_c (th=0x5033c0, block=0x2aaaadd34ab8, self=35415120, argc=Variable "argc" is not available.
) at vm.c:558
#13 0x00002aaaaac1a3f7 in rb_yield (val=35624360) at vm.c:588
#14 0x00002aaaaaadbb3b in rb_ary_each (ary=35414320) at array.c:1427
#15 0x00002aaaaac10f85 in vm_call_method (th=0x5033c0, cfp=0x2aaaadd34a90, num=0, blockptr=0x2aaaadd34ab9, flag=0, id=424, me=0x5b9630, recv=35414320) at vm_insnhelper.c:402
#16 0x00002aaaaac1477d in vm_exec_core (th=0x5033c0, initial=Variable "initial" is not available.
) at insns.def:1006
#17 0x00002aaaaac192ba in vm_exec (th=0x5033c0) at vm.c:1147
#18 0x00002aaaaac19c9c in invoke_block_from_c (th=0x5033c0, block=0x2aaaadd34dd0, self=9467640, argc=Variable "argc" is not available.
) at vm.c:558
#19 0x00002aaaaac1a3f7 in rb_yield (val=5558320) at vm.c:588
#20 0x00002aaaaaadbb3b in rb_ary_each (ary=9079920) at array.c:1427
#21 0x00002aaaaac10f85 in vm_call_method (th=0x5033c0, cfp=0x2aaaadd34da8, num=0, blockptr=0x2aaaadd34dd1, flag=0, id=424, me=0x5b9630, recv=9079920) at vm_insnhelper.c:402
#22 0x00002aaaaac1477d in vm_exec_core (th=0x5033c0, initial=Variable "initial" is not available.
) at insns.def:1006
#23 0x00002aaaaac192ba in vm_exec (th=0x5033c0) at vm.c:1147
#24 0x00002aaaaac19669 in rb_iseq_eval_main (iseqval=5468880) at vm.c:1388
#25 0x00002aaaaab0a8e2 in ruby_exec_internal (n=0x5372d0) at eval.c:214
#26 0x00002aaaaab0a909 in ruby_exec_node (n=0x5372d0) at eval.c:261
#27 0x00002aaaaab0cf3f in ruby_run_node (n=0x5372d0) at eval.c:254
#28 0x000000000040097f in main (argc=5, argv=0x7fffffffdc28) at main.c:35
(gdb) quit