MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Caso limite di aggiornamento dell'integrità di MongoDB

Perché gli aggiornamenti dei singoli documenti sono atomici , indipendentemente dall'ordine di esecuzione dei tuoi due comandi, il documento finirà come:

{amount : 9999, approved: true, ...}

Se il primo comando viene eseguito per primo, il secondo comando lo sovrascriverà.

Se il secondo comando viene eseguito per primo, il primo comando non ha effetto in quanto approve ora è true quindi le condizioni di aggiornamento non corrisponderanno.

Quello che stai (correttamente) facendo è la consolidata concorrenza ottimistica o "aggiorna se corrente" approccio alla gestione dell'accesso simultaneo.