From: "Martin Dürst" Date: 2011-12-07T14:26:58+09:00 Subject: [ruby-core:41519] [ruby-trunk - Bug #5719] Hash::[] can't handle 100000+ args Issue #5719 has been updated by Martin D��rst. This is related to http://redmine.ruby-lang.org/issues/982. In terms of what needs to be done, it may even be "the same" bug, although 982 is about a very long array literal, and this is about a very long array created by a splash. At http://redmine.ruby-lang.org/issues/982, Koichi Sasada said ���������������������1.9.3 ������������������������������������������, i.e. "sorry, but let's deal with this after 1.9.3". So now may be a good time :-). ---------------------------------------- Bug #5719: Hash::[] can't handle 100000+ args http://redmine.ruby-lang.org/issues/5719 Author: Nick Quaranto Status: Open Priority: Normal Assignee: Category: Target version: ruby -v: - I couldn't pin down an exact size for when/how this occurs, but I have code that was creating hashes just fine with Hash::[] with 300k+ arguments. irb(main):056:0> (0...140000).map { |n| [:a, n] }.tap { |a| Hash[*a] }.size SystemStackError: stack level too deep from /Users/qrush/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/irb/workspace.rb:80 Maybe IRB bug! irb(main):057:0> (0...130000).map { |n| [:a, n] }.tap { |a| Hash[*a] }.size => 130000 -- http://redmine.ruby-lang.org