mongoid (3.1.0) と sidekiq (2.7.2) の最新バージョンに更新したところ
、エラーが発生しましfailed with error 10068: "invalid operator: $oid"
た: コードを調べると、そのような選択が表示されます:@selector={"_id"=>{"$oid"=>"[some id]"}}
ここで何が問題なのですか?
質問する
2143 次
2 に答える
7
gemfile
これを私の修正した問題に追加します:
gem 'multi_json', '1.5.1'
最新バージョン (1.6.0) に何か問題があると思います
編集: gem は、この問題を修正した新しいバージョン (1.6.1) に更新されました。詳細はこちら: https://github.com/intridea/multi_json/issues/89
于 2013-02-14T06:53:54.243 に答える
6
BSON::ObjectId は JSON の一部ではないため、これは実際に発生しています...そのため、Sidekiq が引数をワーカーにシリアル化しようとすると、吐き出されます。このコメントをチェックしてください: https://github.com/mperham/sidekiq/issues/951#issuecomment-19497803
修正は、次のようなジョブを実行するときに ID を文字列に変換するだけです。
EmailSubscribe.perform_async(user.id.to_s)
于 2013-06-24T13:46:58.950 に答える