【问题标题】:Moped::Errors::OperationFailure failed with error "no such cmdMoped::Errors::OperationFailure 失败,错误为“没有这样的 cmd
【发布时间】:2013-03-12 14:13:07
【问题描述】:

我最近使用 rails 3.2.12 和 ruby​​ 1.9.3 从 mongoid 2.0.2 升级到 mongoid 3。

Following issue comes when save command excutes => @new_node.save


  Moped::Errors::OperationFailure (The operation: #<Moped::Protocol::Command
      @length=366
      @request_id=30
      @response_to=0
      @op_code=2004
      @flags=[:slave_ok]
      @full_collection_name="campus_dev.$cmd"
      @skip=0
      @limit=-1
      @selector={:aggregate=>"nodes", :pipeline=>[{"$match"=>{"parent_id"=>"51382df8851d1912b7000009", "_id"=>{"$ne"=>"513f24952f1feda4bc000002"}, "position"=>{"$nin"=>[nil]}}}, {"$group"=>{"_id"=>"position", "count"=>{"$sum"=>1}, "max"=>{"$max"=>"$position"}, "min"=>{"$min"=>"$position"}, "sum"=>{"$sum"=>"$position"}, "avg"=>{"$avg"=>"$position"}}}]}
      @fields=nil>
    failed with error "no such cmd"):
      app/controllers/nodes_controller.rb:37:in `create'

【问题讨论】:

标签: ruby-on-rails mongodb ruby-on-rails-3.2 mongoid moped


【解决方案1】:

您没有提到将 MongoDB 版本升级到最新版本(当时)。

如果您指向的是无法识别“聚合”命令的旧 MongoDB 服务器,那么您会得到这个错误。

所有类似错误的实例似乎都指向较旧的mongod 进程。

【讨论】:

    猜你喜欢
    • 2012-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-17
    • 2015-12-21
    • 1970-01-01
    • 2018-02-09
    相关资源
    最近更新 更多