-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Labels:None
-
Environment:Linux sundaysister 2.6.32-22-generic #36-Ubuntu SMP Thu Jun 3 19:31:57 UTC 2010 x86_64 GNU/Linux || ruby 1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux] || bson, bson_ext, mongo 1.0.1
I was trying to query _id for a value greater than 4c65ad8a973d968a601798d6 via MongoMapper:
conditions[:_id] =
{ "$gt" => BSON::ObjectID.new("4c65ad8a973d968a601798d6") }This throws "can't convert Class into Integer" somewhere out of the BSON gem. The MongoMapper IRC channel confirmed my assumption that this might be a bug in the BSON gem.
Stacktrace:
/usr/lib/ruby/gems/1.8/gems/bson-1.0.1/lib/../lib/bson/bson_c.rb:8:in `serialize'
/usr/lib/ruby/gems/1.8/gems/bson-1.0.1/lib/../lib/bson/bson_c.rb:8:in `serialize'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:362:in `construct_query_message'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:344:in `send_initial_query'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:322:in `refill_via_get_more'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:317:in `num_remaining'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:89:in `has_next?'
/usr/lib/ruby/gems/1.8/gems/mongo-1.0.1/lib/../lib/mongo/cursor.rb:202:in `to_a'
/usr/lib/ruby/gems/1.8/gems/plucky-0.3.2/lib/plucky/query.rb:75:in `all'
/usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.8.2/lib/mongo_mapper/plugins/querying/decorator.rb:25:in `all'
/home/lennart/workspace/graylog2-web-interface/lib/graylog2-websocket.rb:36:in `handle'
/home/lennart/workspace/graylog2-web-interface/lib/graylog2-websocket.rb:10
/usr/lib/ruby/gems/1.8/gems/em-websocket-0.1.3/lib/../lib/em-websocket/connection.rb:149:in `call'
/usr/lib/ruby/gems/1.8/gems/em-websocket-0.1.3/lib/../lib/em-websocket/connection.rb:149:in `process_message'
/usr/lib/ruby/gems/1.8/gems/em-websocket-0.1.3/lib/../lib/em-websocket/connection.rb:50:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/em-websocket-0.1.3/lib/../lib/em-websocket/connection.rb:35:in `receive_data'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine'
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'
/usr/lib/ruby/gems/1.8/gems/em-websocket-0.1.3/lib/../lib/em-websocket/websocket.rb:6:in `start'
/home/lennart/workspace/graylog2-web-interface/lib/graylog2-websocket.rb:8:in `launch'
/home/lennart/workspace/graylog2-web-interface/config/initializers/websocketserver.rb:5
/home/lennart/workspace/graylog2-web-interface/config/initializers/websocketserver.rb:3:in `initialize'
/home/lennart/workspace/graylog2-web-interface/config/initializers/websocketserver.rb:3:in `new'
/home/lennart/workspace/graylog2-web-interface/config/initializers/websocketserver.rb:3
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:145:in `load_without_new_constant_marking'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:145:in `load'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:521:in `new_constants_in'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:145:in `load'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:622:in `load_application_initializers'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:621:in `each'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:621:in `load_application_initializers'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:176:in `process'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:113:in `send'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:113:in `run'
/home/lennart/workspace/graylog2-web-interface/config/environment.rb:6
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:156:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:521:in `new_constants_in'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:156:in `require'
/usr/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/commands/server.rb:84
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'