Jelajahi Sumber

Merge pull request #5819 from overleaf/jpa-chat-race

[chat] fix race condition of concurrent delete operations

GitOrigin-RevId: 149c5121791af54cd6c27c3458d81641fb522b3d
Jakob Ackermann 4 tahun lalu
induk
melakukan
05cb9c49bf
1 mengubah file dengan 4 tambahan dan 4 penghapusan
  1. 4 4
      services/chat/app/js/Features/Threads/ThreadManager.js

+ 4 - 4
services/chat/app/js/Features/Threads/ThreadManager.js

@@ -47,15 +47,15 @@ module.exports = ThreadManager = {
       }
     }
 
-    db.rooms.updateOne(
+    db.rooms.findOneAndUpdate(
       query,
       { $set: update },
-      { upsert: true },
-      function (error) {
+      { upsert: true, returnDocument: 'after' },
+      function (error, result) {
         if (error != null) {
           return callback(error)
         }
-        db.rooms.findOne(query, callback)
+        callback(null, result.value)
       }
     )
   },