Actions
Bug #20743
openruby doesn't properly split RUBY_DEBUG_LOG_FILTER into items
Status:
Open
Assignee:
-
Target version:
-
ruby -v:
ruby 3.4.0dev (2024-09-15T01:06:11Z master 532af89e3b) +PRISM [x86_64-linux-musl]
Description
$ docker run --rm alpine:3.20.3 sh -euxc '
apk add git build-base autoconf ruby yaml-dev zlib-dev openssl-dev libffi-dev
git clone https://github.com/ruby/ruby
cd ruby
git checkout 532af89e3b5b78dd3a6fe29c6cc64ad1b073afe2
./autogen.sh
./configure cflags=-DUSE_RUBY_DEBUG_LOG --disable-install-doc
make -j8 install
ruby -v
RUBY_DEBUG_LOG=stderr RUBY_DEBUG_LOG_FILTER=rb_thread_schedule_limits,rb_ractor_thread_switch ruby -e ""
'
...
+ RUBY_DEBUG_LOG=stderr RUBY_DEBUG_LOG_FILTER=rb_thread_schedule_limits,rb_ractor_thread_switch ruby -e
RUBY_DEBUG_LOG=stderr [stderr]
RUBY_DEBUG_LOG_FILTER[0]=rb_thread_schedule_limit (all)
RUBY_DEBUG_LOG_FILTER[1]=rb_ractor_thread_switch (all)
...
As you can see ruby
reports that RUBY_DEBUG_LOG_FILTER[0]
equals rb_thread_schedule_limit
, not rb_thread_schedule_limits
.
This happens because here:
https://github.com/ruby/ruby/blob/532af89e3b5b78dd3a6fe29c6cc64ad1b073afe2/debug.c#L353
1
should not be subtracted.
Also in the following lines str
is increased, but len
is not decreased. It makes sense to recheck if there are no further mistakes.
Actions
Like0
Like0Like0