<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/ruby/test_gc.rb, branch v3_2_11</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) f9a48548cf3ef54fc0a385ccd78c708737055ecc: [Backport #20042]</title>
<updated>2024-01-18T02:48:46+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@ruby-lang.org</email>
</author>
<published>2024-01-18T02:48:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0cc0e43745ffc13a596441adccee295274d99a0b'/>
<id>0cc0e43745ffc13a596441adccee295274d99a0b</id>
<content type='text'>
	restore the stack pointer on finalizer

	When error on finalizer, the exception will be ignored.
	To restart the code, we need to restore the stack pointer.

	fix [Bug #20042]
	---
	 gc.c                 | 4 ++++
	 test/ruby/test_gc.rb | 9 +++++++++
	 2 files changed, 13 insertions(+)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	restore the stack pointer on finalizer

	When error on finalizer, the exception will be ignored.
	To restart the code, we need to restore the stack pointer.

	fix [Bug #20042]
	---
	 gc.c                 | 4 ++++
	 test/ruby/test_gc.rb | 9 +++++++++
	 2 files changed, 13 insertions(+)
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix test when Ruby is verbose</title>
<updated>2023-01-19T06:50:58+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-12-30T15:31:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=98abe4a0be09e0571104f4ca1b5655e353910aa0'/>
<id>98abe4a0be09e0571104f4ca1b5655e353910aa0</id>
<content type='text'>
The test added in 90a80eb0 fails if Ruby is verbose, it outputs the
following line to stderr:

    RUBY_GC_HEAP_INIT_SLOTS=100 (default value: 10000)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The test added in 90a80eb0 fails if Ruby is verbose, it outputs the
following line to stderr:

    RUBY_GC_HEAP_INIT_SLOTS=100 (default value: 10000)
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 90a80eb076429978e720e11fb17a3cbb96de3454: [Backport #19284]</title>
<updated>2023-01-17T02:20:40+00:00</updated>
<author>
<name>NARUSE, Yui</name>
<email>naruse@airemix.jp</email>
</author>
<published>2023-01-17T02:20:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=49cf0896a2934547c0764aadaec021fb37a2e96f'/>
<id>49cf0896a2934547c0764aadaec021fb37a2e96f</id>
<content type='text'>
	Fix integer underflow when using HEAP_INIT_SLOTS

	There is an integer underflow when the environment variable
	RUBY_GC_HEAP_INIT_SLOTS is less than the number of slots currently
	in the Ruby heap.

	[Bug #19284]
	---
	 gc.c                 | 25 +++++++++++++------------
	 test/ruby/test_gc.rb |  5 +++++
	 2 files changed, 18 insertions(+), 12 deletions(-)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	Fix integer underflow when using HEAP_INIT_SLOTS

	There is an integer underflow when the environment variable
	RUBY_GC_HEAP_INIT_SLOTS is less than the number of slots currently
	in the Ruby heap.

	[Bug #19284]
	---
	 gc.c                 | 25 +++++++++++++------------
	 test/ruby/test_gc.rb |  5 +++++
	 2 files changed, 18 insertions(+), 12 deletions(-)
</pre>
</div>
</content>
</entry>
<entry>
<title>Expose need_major_gc via GC.latest_gc_info (#6791)</title>
<updated>2022-12-10T18:35:31+00:00</updated>
<author>
<name>Mirek Klimos</name>
<email>myreggg@gmail.com</email>
</author>
<published>2022-12-10T18:35:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ea613c63608232bf33fd454fc6cd1ce20d63d82e'/>
<id>ea613c63608232bf33fd454fc6cd1ce20d63d82e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add RVALUE_OVERHEAD and move ractor_belonging_id</title>
<updated>2022-11-21T16:26:26+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-11-18T15:07:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5f95228c76e6f6994eb4149217fe3e38f9ff8a27'/>
<id>5f95228c76e6f6994eb4149217fe3e38f9ff8a27</id>
<content type='text'>
This commit adds RVALUE_OVERHEAD for storing metadata at the end of the
slot. This commit moves the ractor_belonging_id in debug builds from the
flags to RVALUE_OVERHEAD which frees the 16 bits in the headers for
object shapes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit adds RVALUE_OVERHEAD for storing metadata at the end of the
slot. This commit moves the ractor_belonging_id in debug builds from the
flags to RVALUE_OVERHEAD which frees the 16 bits in the headers for
object shapes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix flaky test test_thrashing_for_young_objects</title>
<updated>2022-10-08T19:06:30+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-10-08T19:04:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b22a2803a86d6adabc24dd00ef5ae90762a2ae46'/>
<id>b22a2803a86d6adabc24dd00ef5ae90762a2ae46</id>
<content type='text'>
The test could be flaky when a heap has below GC_HEAP_INIT_SLOTS number
of free slots because it would trigger a major GC and allocate more
pages.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The test could be flaky when a heap has below GC_HEAP_INIT_SLOTS number
of free slots because it would trigger a major GC and allocate more
pages.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add more debugging output to test_thrashing_for_young_objects</title>
<updated>2022-10-07T13:39:07+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-10-07T13:39:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ad0def7f259f793ce02400a8d6144f86b3615ddd'/>
<id>ad0def7f259f793ce02400a8d6144f86b3615ddd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add debug output to test_thrashing_for_young_objects</title>
<updated>2022-10-06T17:46:31+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-10-06T17:46:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3df904d1a8dc614589295dfdf30a781114b3a7fc'/>
<id>3df904d1a8dc614589295dfdf30a781114b3a7fc</id>
<content type='text'>
The test is failing only on trunk-repeat50@phosphorus-docker. This
commit adds some debugging output to debug the failure.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The test is failing only on trunk-repeat50@phosphorus-docker. This
commit adds some debugging output to debug the failure.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix flaky test for GC thrashing</title>
<updated>2022-08-17T14:54:28+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-08-17T13:38:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b4daf6e28e4e0291e8c4c90d4ec7c0a00f715965'/>
<id>b4daf6e28e4e0291e8c4c90d4ec7c0a00f715965</id>
<content type='text'>
GC could be in an intermediate state after creating the objects, so we
should finish GC by running a minor GC.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
GC could be in an intermediate state after creating the objects, so we
should finish GC by running a minor GC.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add test for GC thrashing of young object creation</title>
<updated>2022-08-15T14:00:03+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-08-15T13:14:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0264424d58e0eb3ff6fc42b7b4164b6e3b8ea8ca'/>
<id>0264424d58e0eb3ff6fc42b7b4164b6e3b8ea8ca</id>
<content type='text'>
This test will prevent performance regressions like [Bug #18929].
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This test will prevent performance regressions like [Bug #18929].
</pre>
</div>
</content>
</entry>
</feed>
