Ruby 1.9 trunk core ($global_var and 250mb over file)

e$BEOJUE/Li$G$9!#e(B

ruby 1.9 trunk e$B$Ge(B core e$B$7$?$N$G$*CN$i$;$7$^$9!#e(B

ruby 1.9.0 (2007-06-06 patchlevel 0) [i686-linux] rev 12449
Vine Linux 3.2 glibc-2.3.3-3vl1.3

e$B:F8=J}K!e(B

e$B:F8=%9%/%j%W%H$G$9!#>r7o$r$7$$j9~$s$@$H$3$m%0%m!<%P%kJQ?te(B($
e$BIU$-$NJQ?te(B)e$B$GH/@8$9$k$h$&$G$9!#:G=i$K5$$,IU$$$?$H$-$O!"e(B$_
e$B$Ge(B
e$B5/$-$^$7$?!#e(B


while $a = gets
end

e$B%U%!%$%k%5%$%:$Oe(B 250MB
e$BDxEYI,MW$N$h$&$G$9!#%F%-%9%H%U%!%$%k7Oe(B
e$B$G85%U%!%$%k$rMQ0U$7$F!"<!$N$h$&$KG$Ke(B(e$B%U%!%$%k$N?t$rA}$d$;$Pe(B
e$B$5$i$Ke(B)e$B$7$Fe(B 250MB e$BDxEY$N%U%!%$%k$rMQ0U$7$F$/$@$5$$!#e(B


cat j.txt j.txt >| jj.txt
cat jj.txt jj.txt >| j.txt

e$B%P%C%/%H%l!<%9$G$9!#e(B


#0 0x40134a6f in mallopt () from /lib/i686/libc.so.6
#1 0x40133d23 in malloc () from /lib/i686/libc.so.6
#2 0x0805ec91 in ruby_xmalloc (size=1075819392) at gc.c:239
#3 0x0805ed23 in ruby_xmalloc2 (n=1075819392, size=1) at gc.c:259
#4 0x080a38ab in rb_str_buf_new (capa=128) at string.c:286
#5 0x08062aaa in appendline (fptr=0x816a320, delim=10, strp=0xbf800138,
lp=0xbf800158) at io.c:1560
#6 0x08062c56 in rb_io_getline_fast (fptr=0x816a320, delim=10 ‘\n’,
limit=0) at io.c:1642
#7 0x080630de in rb_io_gets (io=1076507540) at io.c:1784
#8 0x08066181 in argf_getline (argc=0, argv=0x401ff020) at io.c:4451
#9 0x08066280 in rb_f_gets (argc=0, argv=0x401ff020) at io.c:4511
#10 0x080bdf0e in call_cfunc (func=0x80661e6 <rb_f_gets>,
recv=1076549840, len=1075819392, argc=0, argv=0x401fb390) at
call_cfunc.ci:32
#11 0x080bbfc3 in th_eval (th=0x8130fd8, initial=0) at insns.def:1279
#12 0x080bd85f in th_eval_body (th=0x8130fd8) at vm.c:1658
#13 0x080bdd48 in rb_thread_eval (th=0x8130fd8, iseqval=1076507960) at
vm.c:1864
#14 0x080bf115 in yarvcore_eval_iseq (iseq=1076507960) at yarvcore.c:98
#15 0x080bf1b2 in yarvcore_eval_parsed (node=0x402a35b0,
file=1076508060) at yarvcore.c:130
#16 0x080593ea in ruby_exec_internal () at eval.c:212
#17 0x08059425 in ruby_exec () at eval.c:227
#18 0x0805945b in ruby_run () at eval.c:246
#19 0x08056df9 in main () at main.c:47
#20 0x400d9c1f in __libc_start_main () from /lib/i686/libc.so.6

e$BEOJUE/Li$G$9!#e(B

[ruby-dev:30900] ruby 1.9 trunk core ($global_var and 250mb over file)
e$B$N7P2aJs9p$G$9!#e(B

e$B8=:_e(B
ruby 1.9.0 (2007-06-08 patchlevel 0) [i686-linux]
e$B$r;H$C$F$$$^$9!#e(B

e$B0JA0%9%?%C%/$rJQ99$9$k$3$H$Ge(B core
e$B$r2sHr$G$-$k>l9g$,$"$j$^$7$?!#:#2s$be(B
e$B%9%?%C%/%5%$%:$rA}$d$9$3$H$G2sHr$G$-$k$h$&$G$9!#e(B


$ ll ~/Mail/trash/SPAM0401
-rw------- 1 tetsu cdwrite 26670666 Feb 1 2004
/home/tetsu/Mail/trash/SPAM0401
$ ulimit -s 16384
$ ruby j.rb ~/Mail/trash/SPAM0401
ruby j.rb ~/Mail/trash/SPAM0401 2.14s user 0.35s system 94% cpu 2.645
total
$ ulimit -s 8192
$ ruby j.rb ~/Mail/trash/SPAM0401
zsh: 9717 segmentation fault (core dumped) ruby j.rb
~/Mail/trash/SPAM0401
ruby j.rb ~/Mail/trash/SPAM0401 1.96s user 0.40s system 100% cpu 2.346
total

e$B0JA0$Ne(B core e$B$N$*$7$i$;e(B([ruby-dev:30791] 1.9
coredump)e$B$G!"e(Bcore e$B$7$J$/$J$Ce(B
e$B$?$HJs9p$7$?$N$G$9$,!"8=:$G$be(B core
e$B$7$F$$$^$9!#e(B[ruby-dev:30839] Re:
1.9 coredump
e$B$G!“3NG’$7$?$O$:$J$N$G$9$,!”;d$N%
%9$+$b$7$l$^$;$s!#$9$$e(B
e$B$^$;$s!#e(B

[ruby-dev:30791] 1.9 coredump e$B:G=i$NJs9pe(B
[ruby-dev:30794] Re: 1.9 coredump e$B%9%?%C%/%5%$%:$NJQ99$Ge(B
coredump e$B2sHre(B
[ruby-dev:30839] Re: 1.9 coredump
e$B%G%U%)%k%H%9%?%C%/%5%$%:$G8=>]$,5/$-$J$/$J$k$3$H$rJs9pe(B

e$B4XO"e(B URL e$B$G$9!#e(B

[ruby-dev:30900] ruby 1.9 trunk core ($global_var and 250mb over file)
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30900

[ruby-dev:30791] 1.9 coredump
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30791

[ruby-dev:30794] Re: 1.9 coredump
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30794

[ruby-dev:30839] Re: 1.9 coredump
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30839

In message “[ruby-dev:30900] ruby 1.9 trunk core ($global_var and 250mb
over file)”
on 07/06/06, WATANABE Tetsuya e$B$5$se(B writes:

|------------------------------
|
|while $a = gets

end
e$B%U%!%$%k%5%$%:$Oe(B 250MB e$BDxEYI,MW$N$h$&$G$9!#%F%-%9%H%U%!%$%k7Oe(B
e$B$G85%U%!%$%k$rMQ0U$7$F!"<!$N$h$&$KG$Ke(B(e$B%U%!%$%k$N?t$rA}$d$;$Pe(B
e$B$5$i$Ke(B)e$B$7$Fe(B 250MB e$BDxEY$N%U%!%$%k$rMQ0U$7$F$/$@$5$$!#e(B