deadlocks - entendimento
15/04/2013
0
obrigada.
Mariana Carvalho
Posts
16/04/2013
Alex Lekao
Basicamente, eh como se eu e vc estivéssemos querendo usar recurso bloqueados um pelo outro, e como para se usar um recurso ele precisa ser liberado, então ficamos esperando um pelo outro a liberação do recurso em uso um do outro, acho que ficou meio complicado... rsrsr
eu tenho um recurso bloqueado que estou utilizando e vc tem um recurso bloqueado que esta usando, então eu preciso do recurso que vc esta bloqueando e vc usar o que eu estou bloqueando, neste ponto ficamos um aguardando pelo outro, neste caso dá-se o deadlock.
de uma olhada neste conteúdo que fala sobre deadlock e tratamento dele, acho que vai ajudar no esclarecimento.
http://msdn.microsoft.com/pt-br/library/ms177433(v=sql.105).aspx
Abraco.
Alex - Lekao
17/04/2013
Mariana Carvalho
17/04/2013
Alex Lekao
no caso do banco de dados se não em engano o SQL vai trabalhar em cima do controle de concorrência para evitar esse tipo de acontecimento, mas eh praticamente impossível prever e/ou evitar o acontecimento de um deadlock.
Acredito que em alguns casos, memoria e outra situação com relação a parte física ou de configurações podem ajudar a haver maior incidência ou não.
mas o "assunto" deadlock eh muito vasto e de grande complexidade a relação entendimento e ele eh pouco tratado, ou pouco discutido mais a fundo no caso, eu ate hoje não encontrei ninguém para explicar mais efetivamente o que eh um deadlock, praticamente ouvia sempre a mesma coisa, "são dois acessos simultâneos ao um mesmo registro bloqueado, a grosso modo eh isso.", então fica um pouco difícil, honestamente o meu entendimento eh limitadíssimo neste assunto.
18/04/2013
Mariana Carvalho
18/04/2013
Alex Lekao
mas no caso da perca de dados, pode acontecer, visto que uma das requisições sera finalizada, ou no caso foi escolhida para o deadlock, para este a transaction acabou e todo o processo que era feito ate aquele momento eh descartado e volta para a o estado original, e a outra sessão continuara e terminara o seu processo.
não sei se podemos chamar exatamente de perca de dados, mas todo os dados que estavam sendo informados naquele lote de informações que estariam em cache, digamos assim, sera descartado.
22/04/2013
Alex Lekao
Precisando posta ai...
se estiver ao meu alcance, se eu souber tento ajudar.
Abraco.
Alex - Lekao
17/08/2013
José
Clique aqui para fazer login e interagir na Comunidade :)