From: regis d'aubarede Date: 2009-02-16T21:17:55+09:00 Subject: [ruby-core:22184] [Bug #1164] 1.9/windows memroy leak with rand() AND inspect Bug #1164: 1.9/windows memroy leak with rand() AND inspect http://redmine.ruby-lang.org/issues/show/1164 Author: regis d'aubarede Status: Open, Priority: Normal Category: core, Target version: 1.9.1 ruby -v: ruby 1.9.1p0 (2009-01-30 revision 21907) [i386-mswin32] # Here is my codes. memory jump far away with ruby 1.9.1, stable with 1.8.6 # seems that a issue arrive when inspect() AND rand() are call in the same function (?!) $MAXC=500 def test1 ss=[] ; 0.upto($MAXC) {|j| ss << j }; ss.inspect ; end def test2 ss=[] ; 0.upto($MAXC) {|j| ss << j*rand() }; end def test3 ss=[] ; 0.upto($MAXC) {|j| ss << rand() }; ss.inspect ; end # bug def test4 ss=[] ; 0.upto($MAXC) {|j| ss << rand() }; end def test5 ss=[] ; 0.upto(1000*$MAXC) {|j| rand() } end def test6 ss=[] ; 0.upto(1000*$MAXC) {|j| rand().inspect } end # bug def test7 ss=[] ; 0.upto(1000*$MAXC) {|j| j.inspect } end puts RUBY_VERSION notest=7 notest==1 && 0.upto(1000*1000*1000) { test1 } # ok notest==2 && 0.upto(1000*1000*1000) { test2 } # ok notest==3 && 0.upto(1000*1000*1000) { test3 } # >>>> bug 1.9.1 notest==4 && 0.upto(1000*1000*1000) { test4 } # ok notest==5 && 0.upto(1000*1000*1000) { test5 } # ok notest==6 && 0.upto(1000*1000*1000) { test6 } # >>>> bug 1.9.1 notest==7 && 0.upto(1000*1000*1000) { test7 } # ok ---------------------------------------- http://redmine.ruby-lang.org