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/