Lock conflit on no wait transaction deadlock

10/08/2004

Olá pessoal, estou tendo um probleminha na hora de salvar meus regisros no banco de dados (interbase). O problema ocorre na hora de aplicar os updates, pois deixo a opção cache update da TIBQuery igual a true. Estou usando os componentes da palheta InterBase, pois ofereçe acesso nativo ao banco.
Ao tentar executar a linha
TIBQuery(DataSet).ApplyUpdates;
do evento after post da TIBQuery ocorre o seguinte erro

Project SAPCPM.exe raised exception class EIBInterBaseError whth message ´lock conflict on no wait transaction deadlock´. Process stopped. Use Step or Run to continue.

Não sei o que pode estar errado.
A Query está ligado a um IBTransaction que está em um outro data module, mas já tentei coloca-lo no mesmo e ocorre o mesmo erro...
Será que alguém sabe o que pode estar acontecendo? O que eu fiz de errado ou o que está faltando?

Desde já agradeço e se precisarem de mais informações postem aí...


Virtual7

Respostas

10/08/2004

Lucas Silva

Isto acontece por que duas pessoas tentam alterar o mesmo registro ao mesmo tempo.....

Ainda não tenho uma solução para isto...
Se alguem tiver, ficarei grato também!


Responder Citar

10/08/2004

Lucas Silva

Colega,
http://delphiforum.icft.com.br/forum/viewtopic.php?t=27155&highlight=deadlock


Responder Citar

10/08/2004

Virtual7

Cara, agradeço a atenção mas não pode ser por causa disso. O projeto ainda não está pronto e só eu estou utilizando o banco no momento. O erro ocorre toda a hora. É muito estranho.


Responder Citar

10/08/2004

Lucas Silva

Cara, agradeço a atenção mas não pode ser por causa disso. O projeto ainda não está pronto e só eu estou utilizando o banco no momento. O erro ocorre toda a hora. É muito estranho.


Você deve estar com várias transações abertas no seu projetos ai...
Dá uma olhada ai...


Responder Citar

10/08/2004

Virtual7

Cara erra isso mesmo, demorei um tempão pra revisar todos os forms e realmente havia outras transações abertas.
Problema resolvido.
Valeu mesmo.
:wink:


Responder Citar