MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB:Sammlung manuell sperren und entsperren

Das manuelle Sperren der Sammlung ist nicht wird in MongoDB-Transaktionen unterstützt .

Was Sie beschrieben haben, ist ein pessimistisches Sperren Verhalten. Ausgewählte Dokumente werden gesperrt, bis die Transaktion festgeschrieben oder rückgängig gemacht wird, was möglicherweise zu Deadlocks führen könnte .

MongoDB Transactions verwendet Optimistic Locking . Es ist eine Strategie, bei der eine interne Versionsnummer aufgezeichnet wird, wenn Dokumente gelesen werden. Überprüfen Sie beim Zurückschreiben des Dokuments/der Dokumente, dass die Version nicht geändert wurde (durch andere Prozesse außerhalb der Transaktion).

Wenn die Version des Dokuments von der Version abweicht, die zu Beginn der Transaktion aufgezeichnet wurde, wird die Transaktion abgebrochen und kann erneut versucht werden (je nach Anforderungen).

Siehe auch Handbuch zu MongoDB-Transaktionen für mehr Informationen.

Zusätzliche Informationen:Transaktionen mit mehreren Dokumenten sind in MongoDB v4+ verfügbar. MongoDB v4.0.0-rc0 (Release Candidate) wurde am 23. Mai 2018 veröffentlicht.