DBAtlas · Atlas de operações de banco de dados

24 LockTimeout: Operation exceeded time limit waiting for a lock (a operação excedeu o limite de tempo aguardando um lock)

MongoDB

O que significa?

Uma operação excedeu seu limite de tempo enquanto aguardava um lock necessário (por exemplo, no nível de banco/coleção) e foi abortada. O lock não pôde ser obtido a tempo.

Por que acontece?

Uma operação longa ou um comando DDL (por exemplo, operações administrativas conflitantes em uma coleção) mantém o lock necessário; escritas concorrentes intensas; ou uma operação limitada por maxTimeMS expira enquanto aguarda um lock. Ocorre com operações conflitantes de índice/coleção.

Como resolver

Encontre a operação que mantém o lock: inspecione as operações ativas e em espera com db.currentOp(); encerre-a com db.killOp() se necessário. Mova comandos administrativos conflitantes (criação de índices, collMod, compact) para horários fora de pico. Mantenha as operações curtas e evite transações desnecessariamente longas. Se necessário, ajuste maxTimeMS à carga de trabalho.

Abrir no DBAtlas →

Mais entradas deste banco