Hi,
I was running a RSRuby to try to get the offspring of a GO term using the GO.db R library. The command basically boils down to
r.eval_R("get('GO:0003824', GOMFOFFSPRING)")
and
r.eval_R("GOID(get('#{go_id_or_synonym_id}', GOSYNONYM))")
I'm finding this difficult to pin down exactly, but when I run that query ~1700 times within my framework it appears to fail with a stack smashing error, given below.
Simplistic tests don't give me this problem at all - it is just within my framework. Is RSRuby at fault, or R, or Ruby somehow? It's been a while since I did any C programming. Knowing the rsruby code, does any solution spring out at you?
Thanks,
ben
*** stack smashing detected ***: ruby terminated
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x48)[0xb7dbb138]
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x0)[0xb7dbb0f0]
/usr/lib/R/lib/libR.so[0xb6ef43b4]
/usr/lib/R/lib/libR.so[0xb6dca6f8]
/usr/lib/libruby1.8.so.1.8[0xb7ec61df]
/usr/lib/libruby1.8.so.1.8[0xb7ecb0b0]
/usr/lib/libruby1.8.so.1.8[0xb7ec61df]
======= Memory map: ========
08048000-08049000 r-xp 00000000 08:07 3705348 /usr/bin/ruby1.8
08049000-0804a000 rw-p 00000000 08:07 3705348 /usr/bin/ruby1.8
0804a000-0f880000 rw-p 0804a000 00:00 0 [heap]
b60a0000-b6108000 r-xp 00000000 08:07 4326086 /usr/local/lib/R/site-library/RSQLite/libs/RSQLite.so
b6108000-b610a000 rw-p 00067000 08:07 4326086 /usr/local/lib/R/site-library/RSQLite/libs/RSQLite.so
b610a000-b617a000 rw-p b610a000 00:00 0
b617a000-b619a000 r-xp 00000000 08:07 4464669 /usr/lib/R/library/grDevices/libs/grDevices.so
b619a000-b619b000 rw-p 0001f000 08:07 4464669 /usr/lib/R/library/grDevices/libs/grDevices.so
b61d8000-b61e2000 r-xp 00000000 08:07 4671408 /lib/libgcc_s.so.1
b61e2000-b61e3000 rw-p 0000a000 08:07 4671408 /lib/libgcc_s.so.1
b61f2000-b61f6000 r-xp 00000000 08:07 4325528 /usr/local/lib/R/site-library/Biobase/libs/Biobase.so
b61f6000-b61f7000 rw-p 00003000 08:07 4325528 /usr/local/lib/R/site-library/Biobase/libs/Biobase.so
b61f7000-b6259000 r-xp 00000000 08:07 6152193 /usr/lib/R/library/stats/libs/stats.so
b6259000-b625b000 rw-p 00062000 08:07 6152193 /usr/lib/R/library/stats/libs/stats.so
b625b000-b6332000 rw-p b625b000 00:00 0
b6334000-b63a7000 rw-p b6334000 00:00 0
b63a7000-b63a8000 r--p 00000000 08:07 3728114 /usr/lib/locale/en_AU.utf8/LC_MEASUREMENT
b63a8000-b63a9000 r--p 00000000 08:07 3728118 /usr/lib/locale/en_AU.utf8/LC_PAPER
b63a9000-b63aa000 r--p 00000000 08:07 3728120 /usr/lib/locale/en_AU.utf8/LC_TIME
b63aa000-b648b000 r--p 00000000 08:07 3728111 /usr/lib/locale/en_AU.utf8/LC_COLLATE
b648b000-b64ca000 r--p 00000000 08:07 3728112 /usr/lib/locale/en_AU.utf8/LC_CTYPE
b64ca000-b6b47000 rw-p b64ca000 00:00 0
b6b47000-b6b74000 r-xp 00000000 08:07 4669520 /lib/libncurses.so.5.6
b6b74000-b6b77000 rw-p 0002c000 08:07 4669520 /lib/libncurses.so.5.6
b6b77000-b6b9d000 r-xp 00000000 08:07 3705591 /usr/lib/libpcre.so.3.12.1
b6b9d000-b6b9e000 rw-p 00026000 08:07 3705591 /usr/lib/libpcre.so.3.12.1
b6b9e000-b6bca000 r-xp 00000000 08:07 4669560 /lib/libreadline.so.5.2
b6bca000-b6bce000 rw-p 0002c000 08:07 4669560 /lib/libreadline.so.5.2
b6bce000-b6bcf000 rw-p b6bce000 00:00 0
b6bcf000-b6c65000 r-xp 00000000 08:07 221249 /usr/lib/libgfortran.so.2.0.0
b6c65000-b6c66000 rw-p 00096000 08:07 221249 /usr/lib/libgfortran.so.2.0.0
b6c66000-b6ce3000 r-xp 00000000 08:07 3705266 /usr/lib/libblas.so.3gf.0
b6ce3000-b6ce4000 rw-p 0007d000 08:07 3705266 /usr/lib/libblas.so.3gf.0
b6ce4000-b6f38000 r-xp 00000000 08:07 4350933 /usr/lib/R/lib/libR.so
b6f38000-b6f46000 rw-p 00254000 08:07 4350933 /usr/lib/R/lib/libR.so
b6f46000-b6fdc000 rw-p b6f46000 00:00 0
b6fe0000-b6fe3000 r-xp 00000000 08:07 3990228 /usr/lib/R/library/tools/libs/tools.so
b6fe3000-b6fe4000 rw-p 00002000 08:07 3990228 /usr/lib/R/library/tools/libs/tools.so
b6fe4000-b6fea000 r-xp 00000000 08:07 5496833 /usr/lib/R/library/methods/libs/methods.so
b6fea000-b6feb000 rw-p 00005000 08:07 5496833 /usr/lib/R/library/methods/libs/methods.so
b6feb000-b6fee000 r-xp 00000000 08:07 4669508 /lib/libgpg-error.so.0.3.0
b6fee000-b6fef000 rw-p 00002000 08:07 4669508 /lib/libgpg-error.so.0.3.0
b6fef000-b703a000 r-xp 00000000 08:07 4669506 /lib/libgcrypt.so.11.2.3
b703a000-b703c000 rw-p 0004a000 08:07 4669506 /lib/libgcrypt.so.11.2.3
b703c000-b704b000 r-xp 00000000 08:07 3704894 /usr/lib/libtasn1.so.3.0.12
b704b000-b704c000 rw-p 0000e000 08:07 3704894 /usr/lib/libtasn1.so.3.0.12
b704c000-b70bd000 r-xp 00000000 08:07 3703161 /usr/lib/libgnutls.so.13.9.1
b70bd000-b70c2000 rw-p 00071000 08:07 3703161 /usr/lib/libgnutls.so.13.9.1
b70c2000-b70d8000 r-xp 00000000 08:07 3704843 /usr/lib/libsasl2.so.2.0.22
b70d8000-b70d9000 rw-p 00015000 08:07 3704843 /usr/lib/libsasl2.so.2.0.22
b70d9000-b70e5000 r-xp 00000000 08:07 3703385 /usr/lib/liblber-2.4.so.2.0.5
b70e5000-b70e6000 rw-p 0000b000 08:07 3703385 /usr/lib/liblber-2.4.so.2.0.5
b70e6000-b70f5000 r-xp 00000000 08:07 4687306 /lib/tls/i686/cmov/libresolv-2.7.so
b70f5000-b70f7000 rw-p 0000f000 08:07 4687306 /lib/tls/i686/cmov/libresolv-2.7.so
b70f7000-b70f9000 rw-p b70f7000 00:00 0
b70f9000-b7100000 r-xp 00000000 08:07 3704652 /usr/lib/libkrb5support.so.0.1
b7100000-b7101000 rw-p 00006000 08:07 3704652 /usr/lib/libkrb5support.so.0.1
b7101000-b7123000 r-xp 00000000 08:07 3704644 /usr/lib/libk5crypto.so.3.1
b7123000-b7124000 rw-p 00022000 08:07 3704644 /usr/lib/libk5crypto.so.3.1
b7124000-b7161000 r-xp 00000000 08:07 3703488 /usr/lib/libldap_r-2.4.so.2.0.5
b7161000-b7162000 rw-p 0003c000 08:07 3703488 /usr/lib/libldap_r-2.4.so.2.0.5
b7162000-b7164000 rw-p b7162000 00:00 0
b7164000-b718c000 r-xp 00000000 08:07 3704519 /usr/lib/libgssapi_krb5.so.2.2
b718c000-b718d000 rw-p 00028000 08:07 3704519 /usr/lib/libgssapi_krb5.so.2.2
b718d000-b7218000 r-xp 00000000 08:07 3704650 /usr/lib/libkrb5.so.3.3
b7218000-b721a000 rw-p 0008a000 08:07 3704650 /usr/lib/libkrb5.so.3.3
b721a000-b7238000 r-xp 00000000 08:07 3704853 /usr/lib/libpq.so.5.1
b7238000-b7239000 rw-p 0001e000 08:07 3704853 /usr/lib/libpq.so.5.1
b7239000-b7240000 r--s 00000000 08:07 3711746 /usr/lib/gconv/gconv-modules.cache
b7240000-b7241000 r--p 00000000 08:07 3728121 /usr/lib/locale/en_AU.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b7241000-b7242000 rw-p b7241000 00:00 0
b7242000-b7247000 r-xp 00000000 08:07 4245779 /usr/lib/ruby/gems/1.8/gems/rsruby-0.5/lib/rsruby_c.so
b7247000-b7248000 rw-p 00004000 08:07 4245779 /usr/lib/ruby/gems/1.8/gems/rsruby-0.5/lib/rsruby_c.so
b7248000-b7250000 r-xp 00000000 08:07 4300804 /usr/lib/ruby/gems/1.8/gems/postgres-0.7.9.2008.01.28/lib/postgres.so
b7250000-b7251000 rw-p 00008000 08:07 4300804 /usr/lib/ruby/gems/1.8/gems/postgres-0.7.9.2008.01.28/lib/postgres.so
b7251000-b737b000 r-xp 00000000 08:07 3729145 /usr/lib/i686/cmov/libcrypto.so.0.9.8
b737b000-b7390000 rw-p 00129000 08:07 3729145 /usr/lib/i686/cmov/libcrypto.so.0.9.8
b7390000-b7393000 rw-p b7390000 00:00 0
b7393000-b73d1000 r-xp 00000000 08:07 3729146 /usr/lib/i686/cmov/libssl.so.0.9.8
b73d1000-b73d5000 rw-p 0003d000 08:07 3729146 /usr/lib/i686/cmov/libssl.so.0.9.8
b73d5000-b73d6000 rw-p b73d5000 00:00 0
b73d6000-b73d8000 r-xp 00000000 08:07 4669514 /lib/libkeyutils-1.2.so
b73d8000-b73d9000 rw-p 00001000 08:07 4669514 /lib/libkeyutils-1.2.so
b73d9000-b73db000 r-xp 00000000 08:07 4669488 /lib/libcom_err.so.2.1
b73db000-b73dc000 rw-p 00001000 08:07 4669488 /lib/libcom_err.so.2.1
b73dc000-b73df000 r-xp 00000000 08:07 3728359 /usr/lib/ruby/1.8/i486-linux/iconv.so
b73df000-b73e0000 rw-p 00002000 08:07 3728359 /usr/lib/ruby/1.8/i486-linux/iconv.so
b73e0000-b73e3000 r-xp 00000000 08:07 3728364 /usr/lib/ruby/1.8/i486-linux/racc/cparse.so
b73e3000-b73e4000 rw-p 00002000 08:07 3728364 /usr/lib/ruby/1.8/i486-linux/racc/cparse.so
b73e4000-b741a000 r-xp 00000000 08:07 3727833 /usr/lib/ruby/1.8/i486-linux/openssl.so
b741a000-b741c000 rw-p 00035000 08:07 3727833 /usr/lib/ruby/1.8/i486-linux/openssl.so
b741c000-b741f000 r-xp 00000000 08:07 3728340 /usr/lib/ruby/1.8/i486-linux/digest.so
b741f000-b7420000 rw-p 00002000 08:07 3728340 /usr/lib/ruby/1.8/i486-linux/digest.so
b7420000-b7422000 r-xp 00000000 08:07 3728342 /usr/lib/ruby/1.8/i486-linux/digest/md5.so
b7422000-b7423000 rw-p 00001000 08:07 3728342 /usr/lib/ruby/1.8/i486-linux/digest/md5.so
b7423000-b77be000 rw-p b7423000 00:00 0
b77be000-b77d2000 r-xp 00000000 08:07 3704965 /usr/lib/libz.so.1.2.3.3
b77d2000-b77d3000 rw-p 00013000 08:07 3704965 /usr/lib/libz.so.1.2.3.3
b77d3000-b77d5000 rw-p b77d3000 00:00 0
b77d5000-b77d6000 r-xp 00000000 08:07 3728357 /usr/lib/ruby/1.8/i486-linux/fcntl.so
b77d6000-b77d7000 rw-p 00000000 08:07 3728357 /usr/lib/ruby/1.8/i486-linux/fcntl.so
b77d7000-b77e1000 r-xp 00000000 08:07 3728366 /usr/lib/ruby/1.8/i486-linux/socket.so
b77e1000-b77e2000 rw-p 00009000 08:07 3728366 /usr/lib/ruby/1.8/i486-linux/socket.so
b77e2000-b77ea000 r-xp 00000000 08:07 3728372 /usr/lib/ruby/1.8/i486-linux/zlib.so
b77ea000-b77eb000 rw-p 00007000 08:07 3728372 /usrAborted
|