Fórum Q Q ta errado? #41603
16/01/2004
0
disparo a 1 e disparo a 2 em seguinda.
cada uma realiza as operações necessárias, qdo chega no ponto de
[b:9b8013f509]ATUALIZAR O SALDO[/b:9b8013f509] de um produto da Deadlock!!!
a transação 1 atualiza o saldo p/ x
em seguida a tra...2 atualiza p/ y, nesse exato momento da deadlock.
já tentei com os outros 2 tipos de isolamento possíveis e não teve mudança.
Alguma solução?
forte abraço.
Ricardo
Rfpsatin
Curtir tópico
+ 0Posts
17/01/2004
Sremulador
Gostei + 0
17/01/2004
Rfpsatin
Salve povo é o seguinte.
2 usuários em máquinas distintas começam a realizar uma mesma tarefa.
qdo o user 1 começa, inicio a transação
o mesmo ocorre com o user 2.
qdo o user um termina o q esta fazendo e da commit, tudo blz, contudo qdo o user 2 faz o mesmo da deadlock.
to ligado q q é deadlock e pq ocorre, agora não to conseguindo me livrar disso mudando os tipos de isolamento transacional.
dicasssss???????????
Gostei + 0
21/01/2004
Afarias
O registro só fica bloqueado no espaço de tempo entre o POST e o COMMIT -- após o commit não há mais bloqueio.
T+
Gostei + 0
21/01/2004
Rfpsatin
Oi tio, blz?
deu o commit sim, to controlando e da p/ ver isso claramente,
qdo o segundo da o commit via aplicação o 1o. ainda não consegue enxergar as mudanças, estranho neh?!
to contornando via try...
Gostei + 0
21/01/2004
Afarias
hahahahahahahahahahahahahahaha... :roll:
|deu o commit sim, to controlando e da p/ ver isso claramente,
então, o outro usuário na rede já poderá alterar o registro sem problema
|qdo o segundo da o commit via aplicação o 1o. ainda não consegue
|enxergar as mudanças, estranho neh?!
o 1º deve ter a transação configurada para READ COMMITED -- e é claro, refazer a consulta (re-executar o SELECT)
|to contornando via try...
Blz.
T+
Gostei + 0
21/01/2004
Rfpsatin
Então, falando claramente...
Vamos dizer assim, a única forma de tratar deadlock seria com try e tratar desta forma?!
Gostei + 0
21/01/2004
Afarias
|tratar desta forma?!
É... a forma de ´tratar´ os deadlocks é com TRY/EXCEPT (quando a transação está em NOWAIT)
Mas o melhor mesmo é procurar sempre evitá-los (os deadlocks) procurando manter tuas transações curtas.
T+
Gostei + 0
21/01/2004
Rfpsatin
Gostei + 0
22/01/2004
Afarias
Vc tem esta opção no FB 1.5
T+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)