none
Identificar DeadLock RRS feed

  • Pergunta

  • Amigos,

    Boa tarde.

    Será que poderiam me ajudar?

    Gostaria de saber como identificar se existe DeadLock numa certa base de dados?

    Muito Obrigado

    Rodrigo.

    • Movido Roberson Ferreira _ segunda-feira, 10 de setembro de 2012 22:10 (De:SQL Server - Desenvolvimento Geral)
    segunda-feira, 10 de setembro de 2012 20:00

Respostas

  •     boa noite Rodrigo !

        Algum processo esta retornando erro de deadlock ?

        Pode ser que algum processo lock algum objeto por um tempo e quando outro processo tente fazer algo com este objeto isto aconteça, tente executar a procedure "sp_who2 active", existe o campo BlkBy que mostrará o sessionID do processo que esta bloqueando um outro processo, caso não apareça nenhum numero esta ok, não ha processos bloqueados no momento. Uma outra maneira seria verificar os logs quando ocorre um deadlock.


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    segunda-feira, 10 de setembro de 2012 21:14
  • Não, verifique o campo blkby, caso retorne numero neste campo é por que o processo esta bloqueado e pode ser causado um deadlock.

    este comando sp_who2 active mostra todos os processos que estão ativos na sua base, porem somente quando no campo blkby aparecer um numero de um spid é que ha o bloqueio e possivel deadlok dependendo do tempo que o processo estiver bloqueado.


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    segunda-feira, 10 de setembro de 2012 21:36

Todas as Respostas

  •     boa noite Rodrigo !

        Algum processo esta retornando erro de deadlock ?

        Pode ser que algum processo lock algum objeto por um tempo e quando outro processo tente fazer algo com este objeto isto aconteça, tente executar a procedure "sp_who2 active", existe o campo BlkBy que mostrará o sessionID do processo que esta bloqueando um outro processo, caso não apareça nenhum numero esta ok, não ha processos bloqueados no momento. Uma outra maneira seria verificar os logs quando ocorre um deadlock.


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    segunda-feira, 10 de setembro de 2012 21:14
  • Este comando me retornou vários números. Todos eles são deadlock?

    Abç.

    segunda-feira, 10 de setembro de 2012 21:30
  • Não, verifique o campo blkby, caso retorne numero neste campo é por que o processo esta bloqueado e pode ser causado um deadlock.

    este comando sp_who2 active mostra todos os processos que estão ativos na sua base, porem somente quando no campo blkby aparecer um numero de um spid é que ha o bloqueio e possivel deadlok dependendo do tempo que o processo estiver bloqueado.


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    segunda-feira, 10 de setembro de 2012 21:36
  • Muito obrigado pela ajuda!

    Abç.

    segunda-feira, 10 de setembro de 2012 21:45
  • De nada, qualquer duvida só postar.

    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    segunda-feira, 10 de setembro de 2012 21:50