Наше приложение является приложением Rails, запущенным на MongoDB через mongoid.Мы периодически видим эту ошибку:
RuntimeError (can't add a new key into hash during iteration)
…contrib-2.1.3/lib/rpm_contrib/instrumentation/mongo.rb: 17:in `instrument_with_newrelic_trace'
…d_gems/ruby/1.9.1/gems/mongo-1.3.0/lib/mongo/cursor.rb: 391:in `send_initial_query'
…contrib-2.1.3/lib/rpm_contrib/instrumentation/mongo.rb: 33:in `refresh_with_newrelic_trace'
…d_gems/ruby/1.9.1/gems/mongo-1.3.0/lib/mongo/cursor.rb: 75:in `next_document'
…ndled_gems/ruby/1.9.1/gems/mongo-1.3.0/lib/mongo/db.rb: 492:in `command'
…ms/ruby/1.9.1/gems/mongo-1.3.0/lib/mongo/collection.rb: 685:in `new_group'
…ms/ruby/1.9.1/gems/mongo-1.3.0/lib/mongo/collection.rb: 600:in `group'
…1/gems/mongoid-2.0.1/lib/mongoid/collections/master.rb: 19:in `block (3 levels) in <class:Master>'
….1/gems/mongoid-2.0.1/lib/mongoid/collections/retry.rb: 29:in `retry_on_connection_failure'
…1/gems/mongoid-2.0.1/lib/mongoid/collections/master.rb: 18:in `block (2 levels) in <class:Master>'
…uby/1.9.1/gems/mongoid-2.0.1/lib/mongoid/collection.rb: 21:in `block (2 levels) in <class:Collection>'
…ngin/releases/20110902181215/app/models/stat_module.rb: 86:in `aggregate_team_stats'
….9.1/gems/mongoid-2.0.1/lib/mongoid/relations/proxy.rb: 111:in `method_missing'
Кажется, что это происходит, когда я выполняю какую-либо команду [MongoidModel] .collection.group ().Трассировка стека, кажется, указывает на то, что проблема находится внутри монго / монгоидных внутренних органов.Более того, это проблема только нашей производственной среды, поэтому ее очень трудно изолировать и отладить.
Мы используем эти драгоценные камни:
- mongo 1.3.1
- mongoid 2.0.1
Кто-нибудь сталкивался с этим раньше?