A primeira coisa a verificar é "houve alguma exceção" ?
Em
coll.update()
, você não está configurando o safe
variável. Se houver uma exceção na update
, ele não será lançado. No seu código você não pega exceções (o que é sugerido) e sua atualização não verifica exceções, então você não tem como saber o que está acontecendo.
A segunda coisa a verificar é "como você está contando" ?
A
update
comando pode "apagar" dados, mas não pode excluir dados (ou alterar um _id
). Você tem uma cópia dos dados originais? Você pode executar seu código em um pequeno número desses 10 ou 100 e ver o que está acontecendo?
O que você descreve não é normal com nenhum dos drivers do MongoDB . Definitivamente, precisamos de mais dados para resolver esse problema.