E11000: E11000 duplicate key error collection (erreur de clé en double dans la collection)
MongoDBQue signifie cette erreur ?
Une insertion ou une mise à jour a tenté d'écrire, dans un ou plusieurs champs protégés par un index unique, une valeur qui existe déjà dans la collection. MongoDB rejette la clé en double.
Cause
Collision de _id, écriture de la même valeur une seconde fois dans un champ doté d'un index unique, condition de concurrence (race condition) lors d'un upsert, ou valeurs null en collision pour plusieurs documents dans un index unique (index non sparse).
Comment la corriger
Vérifiez si le document existe avant l'écriture, ou utilisez un upsert : db.collection.updateOne(filter, {$set:{...}}, {upsert:true}). Consultez le nom de l'index et la valeur dup key dans le message d'erreur. Si l'unicité n'est pas réellement requise, supprimez l'index ; si les null posent problème, utilisez un index partiel/sparse. Dans l'application, interceptez l'erreur et relancez l'opération ou signalez-la à l'utilisateur.