sql >> データベース >  >> NoSQL >> MongoDB

Mongoose VersionError:ドキュメントの保存時にidに一致するドキュメントが見つかりません

    .save()のように見えますが ここでの正しいアプローチは、 .update() コマンドは、このエラーの原因となる「競合状態」を無視してジョブを実行します。すでに更新されている古いバージョンのドキュメントを保存していることが懸念されるため、Mongo DBはこのエラーをスローします:

    1. v1がクライアントに送信されます
    2. v1が保存され、MongoDBでv2に更新されます
    3. v1は再度保存しようとしていますが、Mongo DBにはすでにv2が保存されているため、エラーがスローされます

    より良いアプローチは、v1をクライアントに送信し、カートオブジェクトが変更されたときに、何があってもオブジェクトを新しいカートオブジェクトと同期することです。これは、 .update()を介して実行できます。 .save()ではなく 。

    これは、 .save()が原因です。 .update()がバージョン管理を監視し、気にします バージョン管理に関係なくオブジェクトを更新します。




    1. MongoDB 3.6.22008R2Plusがインストールされない

    2. RQ-キューを空にして削除する

    3. Mongodb Aggregate Nested Group

    4. MongoDB全文および部分テキスト検索