[ruby-core:114897] [Ruby master Bug#19903] Fix memory leak in generating and loading iseq

Issue #19903 has been reported by HParker (Adam Hess). ---------------------------------------- Bug #19903: Fix memory leak in generating and loading iseq https://bugs.ruby-lang.org/issues/19903 * Author: HParker (Adam Hess) * Status: Open * Priority: Normal * Backport: 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN ---------------------------------------- PR: https://github.com/ruby/ruby/pull/8512 Reproduction: ```ruby 10.times do 100_000.times do RubyVM::InstructionSequence.load_from_binary(RubyVM::InstructionSequence.compile("def foo(bar:); end; foo(bar: :baz)").to_binary) end puts `ps -o rss= -p #{$$}` end ``` before: ``` 39636 60756 82140 103260 124380 145764 166884 188004 209388 230508 ``` after: ``` 25184 31784 38648 45248 51848 58712 65312 71912 78776 85376 ``` -- https://bugs.ruby-lang.org/

Issue #19903 has been updated by nagachika (Tomoyuki Chikanaga). Backport changed from 3.0: UNKNOWN, 3.1: REQUIRED, 3.2: REQUIRED to 3.0: UNKNOWN, 3.1: REQUIRED, 3.2: DONE ruby_3_2 128d8728d39c2da21e5433c7af169f73e18fd133 merged revision(s) ef59175a68c448fe334125824b477a9e1d5629bc. ---------------------------------------- Bug #19903: Fix memory leak in generating and loading iseq https://bugs.ruby-lang.org/issues/19903#change-104795 * Author: HParker (Adam Hess) * Status: Closed * Priority: Normal * Backport: 3.0: UNKNOWN, 3.1: REQUIRED, 3.2: DONE ---------------------------------------- PR: https://github.com/ruby/ruby/pull/8512 Reproduction: ```ruby 10.times do 100_000.times do RubyVM::InstructionSequence.load_from_binary(RubyVM::InstructionSequence.compile("def foo(bar:); end; foo(bar: :baz)").to_binary) end puts `ps -o rss= -p #{$$}` end ``` before: ``` 39636 60756 82140 103260 124380 145764 166884 188004 209388 230508 ``` after: ``` 25184 31784 38648 45248 51848 58712 65312 71912 78776 85376 ``` -- https://bugs.ruby-lang.org/
participants (2)
-
HParker (Adam Hess)
-
nagachika (Tomoyuki Chikanaga)