From: "fahmisetiawan (Fahmi Setiawan)" Date: 2012-10-01T20:25:02+09:00 Subject: [ruby-core:47773] [Backport86 - Backport #2009] File.open memory leak Issue #2009 has been updated by fahmisetiawan (Fahmi Setiawan). http://alkian.blogspot.com/2012/09/cara-menyembuhkan-asam-urat-dan-kolestrol-secara-alami.html http://alkian.blogspot.com/2012/09/keretamini-keretamall-komediputar-ya-keretaminikucom.html http://alkian.blogspot.com/2012/09/harga-spesifikasi-samsung-galaxy-y-duos-terbaru.html http://alkian.blogspot.com/2012/09/download-one-piece-grand-battle-2.html http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-toyota-agya.html http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-daihatsu-ayla.html http://alkian.blogspot.com/2012/09/download-harvestmoon-backtonature-bahasa-indonesia.html http://alkian.blogspot.com/2012/09/download-gratis-game-onet-untuk-windows.html http://alkian.blogspot.com/2012/09/cara-download-dengan-jumbofiles.html http://alkian.blogspot.com/2012/09/cara-mengganti-bahasa-indonesia-di-blackbery.html http://alkian.blogspot.com/2012/09/free-download-windows-xp-sp3-black-edition-terbaru-full-version-2012.html http://alkian.blogspot.com/2012/09/free-download-kamus-bahasa-arab.html http://alkian.blogspot.com/2012/09/free-download-corel-draw-x5-portable.html http://alkian.blogspot.com/2012/09/cara-membuat-related-post-artikel-terkait.html http://alkian.blogspot.com/2012/09/daftar-harga-lengkap-hp-mito-terbaru.html http://alkian.blogspot.com/2012/09/download-theme-tron-legacy-for-windows-7.html http://alkian.blogspot.com/2012/09/download-alquran-digital-3d-untuk-pc-komputer.html http://alkian.blogspot.com/2012/09/kumpulan-kata-kata-renungan-terbaik-2012.html http://alkian.blogspot.com/2012/09/kumpulan-website-sosbuk-social-bookmarking.html http://alkian.blogspot.com/2012/09/template-seo-friendly-simple-blue.html http://alkian.blogspot.com/2012/09/harga-hp-nokia-september-2012-terbaru.html http://alkian.blogspot.com/2012/09/foto-ariel-noah-terbaru.html http://alkian.blogspot.com/2012/09/download-serial-number-windows-seven.html http://alkian.blogspot.com/2012/09/biodata-foto-iqbaal-dhiafakhri-ramadhan.html http://alkian.blogspot.com/2012/09/harga-dan-spesifikasi-samsung-galaxy-camera.html http://alkian.blogspot.com/2012/09/biodata-akb48-lengkap-dengan-foto.html http://alkian.blogspot.com/2012/08/arti-dan-makna-kata-noah.html ---------------------------------------- Backport #2009: File.open memory leak https://bugs.ruby-lang.org/issues/2009#change-29898 Author: fibercut (Sven Engelhardt) Status: Closed Priority: Normal Assignee: wyhaines (Kirk Haines) Category: Target version: =begin File.open looses 28 bytes of memory on each call: (p72 releases the memory correctly, p160, p174 dont) big% cat rbtest 20000.times do File.open("/etc/passwd","r") { |f| f.each { |l| l.chomp! } } end big% valgrind --leak-check=full /opt/valgrind/ruby/1.8.7-174/bin/ruby rbtest ==15828== Memcheck, a memory error detector. ==15828== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. ==15828== Using LibVEX rev 1804, a library for dynamic binary translation. ==15828== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. ==15828== Using valgrind-3.3.0-Debian, a dynamic binary instrumentation framework. ==15828== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. ==15828== For more details, rerun with: -v ==15828== ==15828== ==15828== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 21 from 1) ==15828== malloc/free: in use at exit: 1,334,734 bytes in 31,012 blocks. ==15828== malloc/free: 787,948 allocs, 756,936 frees, 101,067,560 bytes allocated. ==15828== For counts of detected errors, rerun with: -v ==15828== searching for pointers to 31,012 not-freed blocks. ==15828== checked 824,216 bytes. ==15828== ==15828== 557,312 (555,744 direct, 1,568 indirect) bytes in 19,848 blocks are definitely lost in loss record 5 of 6 ==15828== at 0x4022AB8: malloc (vg_replace_malloc.c:207) ==15828== by 0x80745B6: ruby_xmalloc (gc.c:158) ==15828== by 0x807D02C: rb_file_open_internal (io.c:2993) ==15828== by 0x807D1A5: rb_file_initialize (io.c:3422) ==15828== by 0x8058053: call_cfunc (eval.c:5771) ==15828== by 0x8061F92: rb_call0 (eval.c:5926) ==15828== by 0x8062240: rb_call (eval.c:6173) ==15828== by 0x80624F7: rb_obj_call_init (eval.c:7809) ==15828== by 0x808AA99: rb_class_new_instance (object.c:1644) ==15828== by 0x8079AEF: rb_io_s_open (io.c:3446) ==15828== by 0x8058053: call_cfunc (eval.c:5771) ==15828== by 0x8061F92: rb_call0 (eval.c:5926) ==15828== ==15828== LEAK SUMMARY: ==15828== definitely lost: 555,744 bytes in 19,848 blocks. ==15828== indirectly lost: 1,568 bytes in 56 blocks. ==15828== possibly lost: 0 bytes in 0 blocks. ==15828== still reachable: 777,422 bytes in 11,108 blocks. ==15828== suppressed: 0 bytes in 0 blocks. ==15828== Reachable blocks (those to which a pointer was found) are not shown. ==15828== To see them, rerun with: --leak-check=full --show-reachable=yes =end -- http://bugs.ruby-lang.org/