28 PathNotViable: Cannot use the part of the path to traverse the element (impossible d'utiliser cette partie du chemin pour parcourir l'élément)
MongoDBQue signifie cette erreur ?
Une mise à jour a tenté de parcourir un chemin de champ pointé (par ex. a.b.c), mais une partie du chemin a rencontré un type qui ne peut pas contenir de sous-champs (valeur scalaire ou élément de mauvais type). Le chemin n'a donc pas pu être parcouru.
Cause
Écriture dans un chemin imbriqué comme a.b.c alors que le champ 'a' du document est un scalaire (par ex. nombre/chaîne) et non un objet/tableau ; ou incohérences de type comme un objet trouvé là où un index de tableau est attendu. Fréquent dans les documents au schéma incohérent (lors de la mise à jour de chemins profonds avec $set).
Comment la corriger
Avant la mise à jour, assurez-vous que le chemin est du type attendu (objet/tableau). Corrigez les documents incompatibles ou rendez la mise à jour conditionnelle à la structure du document. Si nécessaire, convertissez d'abord le champ dans le bon type (par ex. remplacez la valeur scalaire par un objet), puis écrivez le champ imbriqué. Envisagez la validation de schéma pour la cohérence du schéma.
Autres entrées pour ce moteur
- 175 QueryPlanKilledQuery plan killed during execution
- 11602 InterruptedDueToReplStateChangeOperation interrupted due to a replication state change (opération interrompue suite à un changement d'état de la réplication)
- 136 CappedPositionLostCapped collection position lost
- 216 ElectionInProgressElectionInProgress
- 225 TransactionTooOldTransactionTooOld
- 246 SnapshotUnavailableSnapshotUnavailable
- 257 TransactionTooLargeTransactionTooLarge