Actions
Bug #19903
closedFix memory leak in generating and loading iseq
Description
PR: https://github.com/ruby/ruby/pull/8512
Reproduction:
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
Updated by peterzhu2118 (Peter Zhu) over 1 year ago
- Backport changed from 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN to 3.0: UNKNOWN, 3.1: REQUIRED, 3.2: REQUIRED
Updated by Anonymous over 1 year ago
- Status changed from Open to Closed
Applied in changeset git|ef59175a68c448fe334125824b477a9e1d5629bc.
fix iseq kwargs table and original_iseq leaks
[bug #19903]
Co-authored-by: Peter Zhu peter@peterzhu.ca
Updated by nagachika (Tomoyuki Chikanaga) over 1 year ago
- 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.
Actions
Like0
Like0Like0Like0