From: "cantregister (Why Cantiregister)" Date: 2012-06-21T13:31:41+09:00 Subject: [ruby-core:45742] [ruby-trunk - Bug #6618] Seg Fault when printing thread.keys Issue #6618 has been updated by cantregister (Why Cantiregister). macdeux:fca7 adeh$ ruby threadtest.rb >>>>>>>>>>>>>>>> starting threadtest.rb:6: [BUG] Segmentation fault ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.3.0] -- Control frame information ----------------------------------------------- c:0009 p:---- s:0023 b:0023 l:000022 d:000022 CFUNC :to_s c:0008 p:---- s:0021 b:0021 l:000020 d:000020 CFUNC :puts c:0007 p:---- s:0019 b:0019 l:000018 d:000018 CFUNC :puts c:0006 p:0024 s:0015 b:0015 l:001948 d:000014 BLOCK threadtest.rb:6 c:0005 p:---- s:0012 b:0012 l:000011 d:000011 FINISH c:0004 p:---- s:0010 b:0010 l:000009 d:000009 CFUNC :each c:0003 p:0045 s:0007 b:0007 l:001948 d:000a00 EVAL threadtest.rb:5 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:001948 d:001948 TOP -- Ruby level backtrace information ---------------------------------------- threadtest.rb:5:in `
' threadtest.rb:5:in `each' threadtest.rb:6:in `block in
' threadtest.rb:6:in `puts' threadtest.rb:6:in `puts' threadtest.rb:6:in `to_s' -- C level backtrace information ------------------------------------------- See Crash Report log file under ~/Library/Logs/CrashReporter or /Library/Logs/CrashReporter, for the more detail of. -- Other runtime information ----------------------------------------------- * Loaded script: threadtest.rb * Loaded features: 0 enumerator.so 1 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.3.0/enc/encdb.bundle 2 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.3.0/enc/trans/transdb.bundle 3 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/defaults.rb 4 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.3.0/rbconfig.rb 5 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/deprecate.rb 6 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/exceptions.rb 7 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb 8 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems.rb 9 /Users/adeh/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.3.0/bigdecimal.bundle [NOTE] You may have encountered a bug in the Ruby interpreter or extension libraries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html Abort trap: 6 ---------------------------------------- Bug #6618: Seg Fault when printing thread.keys https://bugs.ruby-lang.org/issues/6618#change-27323 Author: cantregister (Why Cantiregister) Status: Open Priority: Normal Assignee: Category: Target version: 1.9.3 ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.3.0] This is very easy to reproduce: require 'bigdecimal' for thr in Thread.list puts thr.keys end Somehow a key is introduced to the thread with the object ID of 8. Attempting to inspect or to_s this key results in a seg fault. 1.9.3p194 :001 > ObjectSpace._id2ref(8) RangeError: 0x00000000000008 is not symbol id value It is not clear how this object is created or inserted into the Thread. -- http://bugs.ruby-lang.org/