Localizar e evitar deadlocks no banco de dados
Prompt que lê um relatório de deadlock, encontra a ordem de bloqueio conflitante e propõe correções duradouras. Cole-o na ferramenta de IA que preferir, que então resolve o deadlock.
- Tipo
- Prompt
- Nível
- Intermediário
- Tempo
- cerca de 15 min
Os resultados dependem da ferramenta, do modelo e do que você digitar.
Prévia do resultado
Exemplo: escrito pela nossa redação, não é uma resposta real de IA.
Linha do tempo: 1. O job A bloqueia o pedido 17 e depois quer a linha de estoque 5 2. A requisição B bloqueia a linha de estoque 5 e depois quer o pedido 17 3. O banco cancela B Causa: ordem de bloqueio invertida Correção 1: bloquear sempre o pedido antes do estoque Correção 2: índice em stock.product_id Correção 3: repetir B até 3 vezes com espera aleatória curta
Preencher
O que você digita fica nesta janela do navegador. Não armazenamos nem enviamos nada.
- PostgreSQL
- MySQL com InnoDB
- SQL Server
- um banco gerenciado na nuvem
- não sei
- dois jobs atualizam os mesmos pedidos
- com carga alta no fim do mês
- durante uma importação noturna
- quando usuários salvam ao mesmo tempo
- depois de um índice novo
- requisições canceladas com erro
- jobs que tentam de novo sem parar
- páginas lentas nos picos
- alterações que faltam
- apenas avisos no log
Seu prompt
Você editou o prompt. As mudanças nos campos acima não o substituem mais.
Isto é uma instrução para uma IA, ainda não o resultado.
Onde este prompt funciona
Estas ferramentas de IA combinam com este prompt:
Como usar
- Preencha os campos ou toque em uma sugestão. Deixe de fora nomes, endereços e outros dados pessoais.
- Copie o prompt pronto para a ferramenta de IA que preferir.
- Cole o relatório do deadlock do log do banco e as consultas dos dois caminhos de código, com os nomes das tabelas e sem dados de clientes.
Por que funciona?
Um deadlock raramente é azar. Quase sempre dois caminhos de código bloqueiam as mesmas coisas em ordem diferente, e uma ordem fixa acaba com ele de vez.
Dicas
- Teste mudanças em transações e índices numa cópia do banco antes de publicá-las.