24 LockTimeout: Operation exceeded time limit waiting for a lock (l'opération a dépassé le délai d'attente d'un verrou)
MongoDBQue signifie cette erreur ?
Une opération a dépassé son délai en attendant un verrou requis (par ex. au niveau base/collection) et a été abandonnée. Le verrou n'a pas pu être obtenu à temps.
Cause
Une opération longue ou une commande DDL (par ex. des opérations d'administration conflictuelles sur une collection) détient le verrou requis ; écritures concurrentes importantes ; ou une opération limitée par maxTimeMS expire en attendant un verrou. Observé avec des opérations d'index/de collection conflictuelles.
Comment la corriger
Trouvez l'opération qui détient le verrou : examinez les opérations actives et en attente avec db.currentOp() ; terminez-la avec db.killOp() si nécessaire. Déplacez les commandes d'administration conflictuelles (construction d'index, collMod, compact) en heures creuses. Gardez les opérations courtes et évitez les transactions inutilement longues. Si nécessaire, ajustez maxTimeMS à la charge.
Autres entrées pour ce moteur
- 10107 NotWritablePrimarynot master / not writable primary
- 91 ShutdownInProgressThe server is in the process of shutting down (le serveur est en cours d'arrêt)
- 189 PrimarySteppedDownPrimary stepped down while operation was in progress (le primaire a été rétrogradé pendant l'opération)
- 7 HostNotFoundCould not find host
- 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