À cause de votre sorte :
db.companies.find({exchange: 'OTC'})
C'est un tri naturel, et puisque votre mise à jour n'est probablement pas en place pour ces 1 100, certains documents se déplacent à la fin des listes liées internes de MongoDB, qui est l'ordre de tri par défaut; en tant que tel, vous obtenez des documents en double.
Triez votre requête avec quelque chose comme _id ou autre, juste quelque chose.