DBAtlas · Atlas de operaciones de bases de datos

24 LockTimeout: Operation exceeded time limit waiting for a lock (la operación superó el límite de tiempo esperando un bloqueo)

MongoDB

¿Qué significa?

Una operación superó su límite de tiempo mientras esperaba un bloqueo necesario (p. ej., a nivel de base de datos/colección) y se abortó. No se pudo obtener el bloqueo a tiempo.

¿Por qué ocurre?

Una operación de larga duración o un comando DDL (p. ej., operaciones administrativas en conflicto sobre una colección) mantiene el bloqueo necesario; escrituras concurrentes intensas; o una operación limitada por maxTimeMS caduca mientras espera un bloqueo. Se ve con operaciones de índices/colecciones en conflicto.

Cómo solucionarlo

Busque la operación que mantiene el bloqueo: inspeccione las operaciones activas y en espera con db.currentOp(); termínela con db.killOp() si es necesario. Mueva los comandos administrativos en conflicto (creación de índices, collMod, compact) a horas valle. Mantenga las operaciones cortas y evite transacciones innecesariamente largas. Si es necesario, ajuste maxTimeMS a la carga.

Abrir en DBAtlas →

Más entradas de este motor