From: jean.boussier@... Date: 2020-07-09T08:11:21+00:00 Subject: [ruby-core:99096] [Ruby master Bug#17020] ObjectSpace.trace_object_allocations_stop raises if called before trace_object_allocations_start Issue #17020 has been updated by byroot (Jean Boussier). As explained in the PR, I have no idea how to write a regression test, because as long as `ObjectSpace.trace_object_allocations_start` was called at least once in the program, it no longer fails afterwards. That is what led me to think it's a bug. I can write test that calls `trace_object_allocations_stop` but based on test ordering it might never fail on CI. ---------------------------------------- Bug #17020: ObjectSpace.trace_object_allocations_stop raises if called before trace_object_allocations_start https://bugs.ruby-lang.org/issues/17020#change-86470 * Author: byroot (Jean Boussier) * Status: Open * Priority: Normal * Assignee: byroot (Jean Boussier) * ruby -v: ruby 2.5.8p224 (2020-03-31 revision 67882) [x86_64-darwin19] * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- The error is easy to reproduce: e.g. on Ruby 2.3: ``` $ ruby -robjspace -e 'ObjectSpace.trace_object_allocations_stop' -e:1:in `trace_object_allocations_stop': wrong argument type false (expected tracepoint) (TypeError) from -e:1:in `
' ``` Up to ruby 2.7.1: ``` $ ruby -robjspace -e 'ObjectSpace.trace_object_allocations_stop' Traceback (most recent call last): 1: from -e:1:in `
' -e:1:in `trace_object_allocations_stop': wrong argument type false (expected tracepoint) (TypeError) ``` Patch: https://github.com/ruby/ruby/pull/3001 -- https://bugs.ruby-lang.org/ Unsubscribe: