Det första du bör kontrollera är "fanns det några undantag" ?
I coll.update()
, du ställer inte in safe
variabel. Om det finns ett undantag på update
, den kommer inte att kastas.
I din kod fångar du inga undantag (vilket föreslås) och din uppdatering söker inte efter undantag, så du har inget sätt att veta vad som händer.
Den andra saken att kontrollera är "hur räknar du" ?
update
kommandot kan "tömma" data, men det kan inte ta bort data (eller ändra ett _id
). ).
Har du en kopia av originaldata? Kan du köra din kod på ett litet antal av dessa 10 eller 100 och se vad som händer?
Det du beskriver är inte normalt med någon av MongoDB-drivrutinerna . Vi behöver definitivt mer data för att lösa det här problemet.