Project

General

Profile

Actions

Bug #3863

closed

[BUG] unknown type 0x22 (0xc given)

Added by jaybrianb (Jay Borenstein) over 13 years ago. Updated almost 13 years ago.

Status:
Rejected
Assignee:
-
Target version:
-
ruby -v:
1.9.2-p0
Backport:
[ruby-core:32506]

Description

=begin
Ubuntu 10.4. Discovered as part of a move from a working environment of Rails 3.0.0 beta 4 running on ruby 1.8.7 to Rails 3.0.0 running on ruby 1.9.2-p0.

I have taken the following steps, in the order listed:

  1. apt-get install ruby1.9.1-full

  2. apt-get install libsqlite3-ruby1.9.1

  3. apt-get install libdbd-sqlite3-ruby1.9.1

  4. vi /etc/gemrc and add line: ":gempath: '/usr/lib/ruby/gems/1.8'" #(this is so the new gem install finds installed gems)

  5. exec bash to have the above take effect in the shell

  6. Download and unpack ruby-1.9.2-p0 source. run ./configure, make, make clean and make install

  7. vi /usr/bin/rails and change ruby path to /usr/local/bin/ruby

  8. confirm on command line that ruby 1.9.2 is working with ruby -v

  9. Create a new rails project: rails new new_project

  10. cd into new_project and type, 'rails s' to launch the server.

  11. Any rails related action, such as point your Web browser to localhost:3000 and clicking on, 'About your application's environment' will produce the crash and accompanying stack trace below.

Rails stack trace below:

[2010-09-22 16:12:08] INFO WEBrick 1.3.1
[2010-09-22 16:12:08] INFO ruby 1.9.2 (2010-08-18) [x86_64-linux]
[2010-09-22 16:12:08] INFO WEBrick::HTTPServer#start: pid=20955 port=3000
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/sqlite3_adapter.rb:27: [BUG] unknown type 0x22 (0xc given)
ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]

-- control frame ----------
c:0042 p:---- s:0202 b:0202 l:000201 d:000201 CFUNC :initialize
c:0041 p:---- s:0200 b:0200 l:000199 d:000199 CFUNC :new
c:0040 p:0211 s:0195 b:0195 l:000194 d:000194 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/sqlite3_adapter.rb:27
c:0039 p:0045 s:0190 b:0190 l:000189 d:000189 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:230
c:0038 p:0011 s:0187 b:0187 l:000186 d:000186 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:238
c:0037 p:0048 s:0183 b:0183 l:000169 d:000182 BLOCK /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:194
c:0036 p:---- s:0180 b:0180 l:000179 d:000179 FINISH
c:0035 p:---- s:0178 b:0178 l:000177 d:000177 CFUNC :loop
c:0034 p:0009 s:0175 b:0175 l:000169 d:000174 BLOCK /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:190
c:0033 p:0019 s:0173 b:0173 l:000172 d:000172 METHOD /usr/local/lib/ruby/1.9.1/monitor.rb:201
c:0032 p:0013 s:0170 b:0170 l:000169 d:000169 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:189
c:0031 p:0030 s:0167 b:0164 l:000163 d:000163 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:96
c:0030 p:0033 s:0161 b:0161 l:000160 d:000160 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:318
c:0029 p:0018 s:0156 b:0156 l:000155 d:000155 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:97
c:0028 p:0011 s:0153 b:0153 l:000152 d:000152 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:89
c:0027 p:0043 s:0150 b:0150 l:000149 d:000149 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/query_cache.rb:12
c:0026 p:0019 s:0146 b:0146 l:0023f0 d:0023f0 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/query_cache.rb:31
c:0025 p:0015 s:0142 b:0142 l:000141 d:000141 METHOD /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:355
c:0024 p:0029 s:0138 b:0138 l:0004d0 d:000137 BLOCK /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/callbacks.rb:46
c:0023 p:0155 s:0136 b:0136 l:000135 d:000135 METHOD /usr/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/callbacks.rb:415
c:0022 p:0011 s:0126 b:0126 l:0004d0 d:0004d0 METHOD /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/callbacks.rb:44
c:0021 p:0015 s:0122 b:0122 l:000121 d:000121 METHOD /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/sendfile.rb:107
c:0020 p:0049 s:0112 b:0112 l:000111 d:000111 METHOD /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/remote_ip.rb:48
c:0019 p:0015 s:0108 b:0108 l:000107 d:000107 METHOD /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/show_exceptions.rb:46
c:0018 p:0027 s:0100 b:0100 l:000099 d:000099 METHOD /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/rack/logger.rb:13
c:0017 p:0032 s:0096 b:0096 l:000095 d:000095 METHOD /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/runtime.rb:17
c:0016 p:0052 s:0087 b:0087 l:000086 d:000086 METHOD /usr/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/cache/strategy/local_cache.rb:72
c:0015 p:0014 s:0083 b:0083 l:000077 d:000082 BLOCK /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/lock.rb:11
c:0014 p:0019 s:0081 b:0081 l:000080 d:000080 METHOD internal:prelude:10
c:0013 p:0054 s:0078 b:0078 l:000077 d:000077 METHOD /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/lock.rb:11
c:0012 p:0193 s:0073 b:0073 l:000072 d:000072 METHOD /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/static.rb:30
c:0011 p:0032 s:0066 b:0066 l:000065 d:000065 METHOD /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/application.rb:168
c:0010 p:0021 s:0062 b:0062 l:000061 d:000061 METHOD /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/application.rb:77
c:0009 p:---- s:0057 b:0057 l:000056 d:000056 FINISH
c:0008 p:0015 s:0055 b:0055 l:000054 d:000054 METHOD /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/rack/log_tailer.rb:14
c:0007 p:0015 s:0050 b:0050 l:000049 d:000049 METHOD /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/content_length.rb:13
c:0006 p:0338 s:0042 b:0042 l:000041 d:000041 METHOD /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/handler/webrick.rb:52
c:0005 p:0257 s:0030 b:0030 l:000029 d:000029 METHOD /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:111
c:0004 p:0393 s:0020 b:0020 l:000019 d:000019 METHOD /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:70
c:0003 p:0126 s:0009 b:0009 l:000a18 d:000008 BLOCK /usr/local/lib/ruby/1.9.1/webrick/server.rb:183
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:---- s:0002 b:0002 l:000001 d:000001 TOP

-- Ruby level backtrace information ----------------------------------------
/usr/local/lib/ruby/1.9.1/webrick/server.rb:183:in block in start_thread' /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:70:in run'
/usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:111:in service' /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/handler/webrick.rb:52:in service'
/usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/content_length.rb:13:in call' /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/rack/log_tailer.rb:14:in call'
/usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/application.rb:77:in method_missing' /usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/application.rb:168:in call'
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/static.rb:30:in call' /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/lock.rb:11:in call'
internal:prelude:10:in synchronize' /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/lock.rb:11:in block in call'
/usr/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/cache/strategy/local_cache.rb:72:in call' /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/runtime.rb:17:in call'
/usr/lib/ruby/gems/1.8/gems/railties-3.0.0/lib/rails/rack/logger.rb:13:in call' /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/show_exceptions.rb:46:in call'
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/remote_ip.rb:48:in call' /usr/lib/ruby/gems/1.8/gems/rack-1.2.1/lib/rack/sendfile.rb:107:in call'
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/callbacks.rb:44:in call' /usr/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/callbacks.rb:415:in _run_call_callbacks'
/usr/lib/ruby/gems/1.8/gems/actionpack-3.0.0/lib/action_dispatch/middleware/callbacks.rb:46:in block in call' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:355:in call'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/query_cache.rb:31:in call' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/query_cache.rb:12:in cache'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:89:in connection' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:97:in retrieve_connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:318:in retrieve_connection' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:96:in connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:189:in checkout' /usr/local/lib/ruby/1.9.1/monitor.rb:201:in mon_synchronize'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in block in checkout' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in loop'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:194:in block (2 levels) in checkout' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:238:in checkout_new_connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:230:in new_connection' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/sqlite3_adapter.rb:27:in sqlite3_connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/sqlite3_adapter.rb:27:in new' /usr/lib/ruby/gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/sqlite3_adapter.rb:27:in initialize'

-- C level backtrace information -------------------------------------------
/usr/local/bin/ruby(rb_vm_bugreport+0x9e) [0x522bee]
/usr/local/bin/ruby() [0x563f98]
/usr/local/bin/ruby(rb_bug+0xb1) [0x564131]
/usr/local/bin/ruby(rb_check_type+0xae) [0x5657ae]
/usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.so(+0x4162) [0x7f99e157f162]
/usr/local/bin/ruby() [0x512603]
/usr/local/bin/ruby(rb_class_new_instance+0x30) [0x452fc0]
/usr/local/bin/ruby() [0x5190a7]
/usr/local/bin/ruby() [0x51a7f2]
/usr/local/bin/ruby() [0x51f289]
/usr/local/bin/ruby() [0x520fe9]
/usr/local/bin/ruby(rb_rescue2+0x15b) [0x41a60b]
/usr/local/bin/ruby() [0x50dae9]
/usr/local/bin/ruby() [0x5190a7]
/usr/local/bin/ruby() [0x51a7f2]
/usr/local/bin/ruby() [0x51f289]
/usr/local/bin/ruby() [0x51258b]
/usr/local/bin/ruby() [0x51891e]
/usr/local/bin/ruby() [0x518f60]
/usr/local/bin/ruby() [0x51a7f2]
/usr/local/bin/ruby() [0x51f289]
/usr/local/bin/ruby(rb_vm_invoke_proc+0xa1) [0x512021]
/usr/local/bin/ruby() [0x527fbf]
/usr/local/bin/ruby() [0x52807e]
/lib/libpthread.so.0(+0x69ca) [0x7f99e3c629ca]
/lib/libc.so.6(clone+0x6d) [0x7f99e30f76fd]

[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

Aborted
=end

Actions #1

Updated by darix (Marcus Rückert) over 13 years ago

=begin
On 2010-09-23 08:31:15 +0900, Jay Borenstein wrote:

  1. vi /etc/gemrc and add line: ":gempath: '/usr/lib/ruby/gems/1.8'"
    #(this is so the new gem install finds installed gems)

I highly doubt this is supported. you have to rebuild/reinstall all the
native extensions in your 1.9 gem path.

 darix

--
openSUSE - SUSE Linux is my linux
openSUSE is good for you
www.opensuse.org

=end

Actions #2

Updated by jaybrianb (Jay Borenstein) over 13 years ago

=begin
The /etc/gemrc config file is specifically mentioned in the gem documentation and I have confirmed it adds the specified directories with, 'gem environment'. Further, gem list then displays all the installed gems.

That said, based on your comment I reinstalled all the gems anyway to the default 1.9.1/gem dir. This had no impact on the error described in this issue.

Did you have something else in mind when you say rebuild/reinstall all the native extensions?
=end

Actions #3

Updated by luislavena (Luis Lavena) over 13 years ago

=begin
Hello Jay,

I've commented to your question on sqlite3-ruby.

Did you change the gempath and gemhome? as long you're forcing RubyGems to load Ruby 1.8.x gems and it's extension things are going to fail.

Please ensure:

  • none of these modifications are in place.
  • the full output of "gem env"
  • a simple invocation of one of the gems:

ruby -rrubygems -ve "require 'sqlite3'; SQLite3::Database.new(':memory:')"

=end

Actions #4

Updated by darix (Marcus Rückert) over 13 years ago

=begin

from the first post:

[[[
/usr/local/bin/ruby(rb_vm_bugreport+0x9e) [0x522bee]
/usr/local/bin/ruby() [0x563f98]
/usr/local/bin/ruby(rb_bug+0xb1) [0x564131]
/usr/local/bin/ruby(rb_check_type+0xae) [0x5657ae]
/usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.so(+0x4162) [0x7f99e157f162]
^^^
]]]

so he is trying to use the 1.8 extension with 1.9.

 darix

--
openSUSE - SUSE Linux is my linux
openSUSE is good for you
www.opensuse.org

=end

Actions #5

Updated by naruse (Yui NARUSE) over 13 years ago

  • Status changed from Open to Rejected

=begin
1.9 can't load 1.8 extension.
=end

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0