Mustafa, jedinečná omezení nejsou vynucována v rámci jednoho pole, ačkoli jsou vynucována mezi dokumenty v kolekci. Toto je známá chyba, která nějakou dobu nebude opravena:
https://jira.mongodb.org/browse/SERVER-1068
Existuje však řešení. Udržujte svůj jedinečný index na místě a:
1) Ujistěte se, že vaše aplikace nevkládá do pole nové dokumenty s duplicitními hodnotami. Před vložením můžete zkontrolovat jedinečnost kódu aplikace.
2) Při aktualizaci existujících dokumentů použijte $addToSet namísto $push.