Project

General

Profile

Backport #461

Re: Hard question: Any ideas why this code leaks memory?

Added by nobu (Nobuyoshi Nakada) about 11 years ago. Updated about 1 month ago.

Status:
Closed
Priority:
Normal
[ruby-core:18350]

Description

=begin
Hi,

At Wed, 20 Aug 2008 04:46:24 +0900,
Sven C. Koehler wrote in [ruby-talk:311847]:

could someone help me understand why this code leaks memory? (I am using
ruby 1.8.6 (2007-12-03 patchlevel 113) [x86_64-linux].)

def rss_leaks
/VmRSS:\s+(\d+)/m.match(File.open("/proc/#{$$}/status") {|f|
f.read })[1].to_i
end

Calling GC.start inbetween does not help, but when we rewrote rss_leaks
this way the leaks disappeared:

def rss_no_leaks()
d = File.open("/proc/#{$$}/status") {|f| f.read }
/VmRSS:\s+(\d+)/m.match(d)[1].to_i
end

Seems a bug.

--
Nobu Nakada
=end

History

#1

Updated by rogerdpack (Roger Pack) almost 11 years ago

=begin
You should try SVN HEAD and see if it's still there.
See also http://rubyforge.org/tracker/?func=detail&atid=1698&aid=15425&group_id=426
=end

#2

Updated by shyouhei (Shyouhei Urabe) over 10 years ago

  • Assignee set to matz (Yukihiro Matsumoto)

=begin

=end

#3

Updated by shyouhei (Shyouhei Urabe) almost 9 years ago

  • Status changed from Open to Assigned
  • ruby -v set to -

=begin

=end

#4

Updated by shyouhei (Shyouhei Urabe) almost 9 years ago

  • Category set to core
  • Status changed from Assigned to Feedback

=begin
Can this still happen? I can't observe on my machine with
ruby 1.8.8dev (2010-09-24 revision 27061) [x86_64-linux].

irb(main):005:0> 100000.times { rss_leaks }; rss_leaks
=> 5616
irb(main):006:0> 100000.times { rss_leaks }; rss_leaks
=> 5616
irb(main):007:0> 100000.times { rss_leaks }; rss_leaks
=> 5616
irb(main):008:0> 100000.times { rss_leaks }; rss_leaks
=> 5616

=end

#5

Updated by jeremyevans0 (Jeremy Evans) about 1 month ago

  • ruby -v deleted (-)
  • Status changed from Feedback to Closed
  • Description updated (diff)
  • Project changed from Ruby 1.8 to Backport187
  • Tracker changed from Bug to Backport

Also available in: Atom PDF