21

I am having issues with the JSON gem and Ruby 1.9.2. I am upgrading to Rails 3.0.3 and whenever I try to boot the environment it blows up. This is from a empty test project with only JSON gem 1.4.6 as a dependency.

/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/common.rb:66: [BUG] unknown type 0x22 (0xc given)
ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.0]

-- control frame ----------
c:0032 p:---- s:0096 b:0096 l:000095 d:000095 CFUNC  :initialize
c:0031 p:---- s:0094 b:0094 l:000093 d:000093 CFUNC  :new
c:0030 p:0085 s:0091 b:0089 l:000088 d:000088 METHOD /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/common.rb:66
c:0029 p:0090 s:0081 b:0080 l:000079 d:000079 CLASS  /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:11
c:0028 p:0011 s:0078 b:0078 l:000077 d:000077 CLASS  /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:6
c:0027 p:0021 s:0076 b:0076 l:000075 d:000075 TOP    /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:3
c:0026 p:---- s:0074 b:0074 l:000073 d:000073 FINISH
c:0025 p:---- s:0072 b:0072 l:000071 d:000071 CFUNC  :require
c:0024 p:0027 s:0068 b:0068 l:000067 d:000067 CLASS  /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json.rb:6
c:0023 p:0021 s:0066 b:0066 l:000065 d:000065 TOP    /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json.rb:2
c:0022 p:---- s:0064 b:0064 l:000063 d:000063 FINISH
c:0021 p:---- s:0062 b:0062 l:000061 d:000061 CFUNC  :require
c:0020 p:0026 s:0058 b:0058 l:000039 d:000057 BLOCK  /Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:64
c:0019 p:---- s:0055 b:0055 l:000054 d:000054 FINISH
c:0018 p:---- s:0053 b:0053 l:000052 d:000052 CFUNC  :each
c:0017 p:0091 s:0050 b:0050 l:000039 d:000049 BLOCK  /Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:62
c:0016 p:---- s:0045 b:0045 l:000044 d:000044 FINISH
c:0015 p:---- s:0043 b:0043 l:000042 d:000042 CFUNC  :each
c:0014 p:0046 s:0040 b:0040 l:000039 d:000039 METHOD /Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:51
c:0013 p:0021 s:0036 b:0036 l:000035 d:000035 METHOD /Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler.rb:112
c:0012 p:0079 s:0032 b:0032 l:000031 d:000031 TOP    /Users/lee/workspaces/test3/config/application.rb:7
c:0011 p:---- s:0030 b:0030 l:000029 d:000029 FINISH
c:0010 p:---- s:0028 b:0028 l:000027 d:000027 CFUNC  :require
c:0009 p:0016 s:0024 b:0024 l:000015 d:000023 BLOCK  /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:28
c:0008 p:---- s:0021 b:0021 l:000020 d:000020 FINISH
c:0007 p:---- s:0019 b:0019 l:000018 d:000018 CFUNC  :tap
c:0006 p:0468 s:0016 b:0016 l:000015 d:000015 TOP    /Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:27
c:0005 p:---- s:0012 b:0012 l:000011 d:000011 FINISH
c:0004 p:---- s:0010 b:0010 l:000009 d:000009 CFUNC  :require
c:0003 p:0061 s:0006 b:0006 l:001598 d:000978 EVAL   script/rails:6
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001598 d:001598 TOP  
---------------------------
-- Ruby level backtrace information ----------------------------------------
script/rails:6:in `<main>'
script/rails:6:in `require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:27:in `<top (required)>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:27:in `tap'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:28:in `block in <top (required)>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.3/lib/rails/commands.rb:28:in `require'
/Users/lee/workspaces/test3/config/application.rb:7:in `<top (required)>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler.rb:112:in `require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in `require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in `each'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `block in require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `each'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `block (2 levels) in require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json.rb:2:in `<top (required)>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json.rb:6:in `<module:JSON>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json.rb:6:in `require'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:3:in `<top (required)>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:6:in `<module:JSON>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/ext.rb:11:in `<module:Ext>'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/common.rb:66:in `generator='
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/common.rb:66:in `new'
/Users/lee/.rvm/gems/ruby-1.9.2-p0/gems/json-1.4.6/lib/json/common.rb:66:in `initialize'

-- C level backtrace information -------------------------------------------
0   libruby.1.9.1.dylib                 0x000000010017f9e2 rb_vm_bugreport + 210
1   libruby.1.9.1.dylib                 0x0000000100039d24 report_bug + 372
2   libruby.1.9.1.dylib                 0x0000000100039ee8 rb_bug + 200
3   libruby.1.9.1.dylib                 0x000000010003b986 rb_check_type + 166
4   generator.bundle                    0x00000001005f5f3a cState_initialize + 42
5   libruby.1.9.1.dylib                 0x00000001001715a9 vm_call0 + 601
6   libruby.1.9.1.dylib                 0x0000000100177a0e rb_funcall2 + 350
7   libruby.1.9.1.dylib                 0x000000010008f743 rb_class_new_instance + 51
8   libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
9   libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
10  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
11  libruby.1.9.1.dylib                 0x00000001001702ea rb_iseq_eval + 346
12  libruby.1.9.1.dylib                 0x0000000100041e9c rb_load_internal + 300
13  libruby.1.9.1.dylib                 0x00000001000431dc rb_require_safe + 1052
14  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
15  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
16  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
17  libruby.1.9.1.dylib                 0x00000001001702ea rb_iseq_eval + 346
18  libruby.1.9.1.dylib                 0x0000000100041e9c rb_load_internal + 300
19  libruby.1.9.1.dylib                 0x00000001000431dc rb_require_safe + 1052
20  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
21  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
22  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
23  libruby.1.9.1.dylib                 0x000000010017e531 rb_yield + 625
24  libruby.1.9.1.dylib                 0x0000000100009572 rb_ary_each + 82
25  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
26  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
27  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
28  libruby.1.9.1.dylib                 0x000000010017e531 rb_yield + 625
29  libruby.1.9.1.dylib                 0x0000000100009572 rb_ary_each + 82
30  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
31  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
32  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
33  libruby.1.9.1.dylib                 0x00000001001702ea rb_iseq_eval + 346
34  libruby.1.9.1.dylib                 0x0000000100041e9c rb_load_internal + 300
35  libruby.1.9.1.dylib                 0x00000001000431dc rb_require_safe + 1052
36  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
37  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
38  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
39  libruby.1.9.1.dylib                 0x000000010017e531 rb_yield + 625
40  libruby.1.9.1.dylib                 0x000000010008dec1 rb_obj_tap + 17
41  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
42  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
43  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
44  libruby.1.9.1.dylib                 0x00000001001702ea rb_iseq_eval + 346
45  libruby.1.9.1.dylib                 0x0000000100041e9c rb_load_internal + 300
46  libruby.1.9.1.dylib                 0x00000001000431dc rb_require_safe + 1052
47  libruby.1.9.1.dylib                 0x0000000100165497 vm_call_method + 983
48  libruby.1.9.1.dylib                 0x0000000100168225 vm_exec_core + 8293
49  libruby.1.9.1.dylib                 0x000000010016fe63 vm_exec + 1507
50  libruby.1.9.1.dylib                 0x0000000100170168 rb_iseq_eval_main + 504
51  libruby.1.9.1.dylib                 0x000000010003f0f2 ruby_exec_internal + 178
52  libruby.1.9.1.dylib                 0x0000000100041a7c ruby_run_node + 60
53  ruby                                0x0000000100000ecf main + 79
54  ruby                                0x0000000100000e74 start + 52
55  ???                                 0x0000000000000003 0x0 + 3

[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
the Tin Man
  • 158,662
  • 42
  • 215
  • 303
Lee
  • 9,432
  • 3
  • 30
  • 34

1 Answers1

41

I had some weird issues after upgrading to Snow Leopard because of the 64-bit difference so if you upgraded to Snow Leopard you might be running into the same thing.

I installed the latest XCode, then blew away my 1.9.2 install using rvm uninstall 1.9.2 and rebuilt all the gems using gem update --system; gem pristine --all.

the Tin Man
  • 158,662
  • 42
  • 215
  • 303
  • You sir are the smartest man alive. Thanks so much! gem pristine --all did the trick! – Lee Nov 24 '10 at 14:26
  • 5
    I'm not smart, I'm just a veteran of that particular battle. I'm glad it helped. – the Tin Man Nov 24 '10 at 16:04
  • 2
    I just had the same problem on Ubuntu - `gem pristine --all` was what I needed. THANK YOU. – Skilldrick Jul 01 '11 at 23:38
  • @theTinMan I'll join in on the love fest and say that this answered saved my work day ^^ thanks a lot – marcgg Oct 05 '11 at 10:29
  • Also worked for me on Ubuntu 11.10 x64, rvm 1.10.2, ruby 1.9.3, rails 3.1.3. webrick was crashing after serving the first request. – Brian Jan 20 '12 at 03:28
  • 1
    THANK YOU for the answer! gem pristine --all is my new bicycle. – Eric Mill Apr 17 '12 at 00:09
  • no luck with this, moreover the redmine is not starting at all after this, so be careful! – Soul_man May 30 '13 at 03:48
  • This question and answer is to fix problems with Ruby and JSON. It tells Rubygems to reinstall all gems from their locally cached versions, in case something changed. RedMine should continue to work unless it modifies Rubygems or particular gems from their defaults and, if it does, then shame on them. Perhaps it'd be a good idea for you to create a question describing the problem you're seeing and some RedMine folks can chime in. As is, it sounds like you took a wild-chance fixing some undefined/undescribed problem and it failed. – the Tin Man May 30 '13 at 15:48