mongodb verrouille-t-il la base de données lors de l'exécution de la mise à jour groupée? J'utilise le fonctionnement en masse de mongo.écriture simultanée dans mongodb mise à jour groupée
var bulk = db.items.initializeUnorderedBulkOp(); bulk.find({ status: "D" }).updateOne({ $set: { status: "I", points: "0" } }); bulk.find({ status: "A" }).updateOne({ $set: { status: "B", points: "0" } }); bulk.execute();
Supposons que cette opération a 100 trouver et mise à jour, et il y a un autre processus en cours qui tente également de mettre à jour même collection db.
Possède-t-il un verrou pour empêcher la mise à jour simultanée?
Oui. Je comprends que lors de la mise à jour de la collection en utilisant 'db.collection.update()' mongo utilise le verrouillage. Je demande spécifiquement si j'utilise bulk.initializeUnorderedBulkOp pour mettre à jour une collection. utilisera-t-il le verrou? Et oui. J'utilise mongo 3.2 –
La mise à jour en vrac n'est pas différente en ce qui concerne le verrouillage/concurrence. – helmy