Actions
Bug #3899
closed32 ビットマシンにおいて、symbol table overflow (RuntimeError) が 2Mi 個のシンボルで起きる
ruby -v:
ruby 1.9.3dev (2010-08-31 trunk 29154) [i686-linux]
Backport:
Description
=begin
32 ビットマシンにおいて、
gc.c の rb_obj_id のコメントには、
* symbol ssssssssssssssssssssssss00001110
* symbol 000SSSSSSSSSSSSSSSSSSSSSSSSSSS0 S...S % A = 4 (S...S = s...s * A + 4)
とあり、symbol のための id = hash のための空間は 24bit すなわち 16Mi 個ぶんあるはずなのに、2Mi 個超のシンボルを作ろうとすると、symbol table overflow (RuntimeError) が起きる。
=end
Actions
Like0
Like0