$isolated
przyjmuje blokadę zapisu do momentu zakończenia zapisu lub napotkania błędu i nie daje blokady podczas przetwarzania. Zapobiega to innym odczytom i zapisom. To nie zapewnić niepodzielność typu wszystko albo nic, ponieważ jeśli wystąpi błąd w dokumencie 32756, poprzednie aktualizacje 32755 pozostaną. Nie ma wycofywania; aktualizacja nie jest atomowa. Aktualizacja jest izolowana.
Nie pomoże to jednak OP, ponieważ to jego własna aktualizacja przenosi dokumenty (poprzez $push
) i powodując dwukrotne trafienie. Użyj sortowania na indeksowanym polu; zawsze masz _id
.