Magno 0 Denunciar post Postado Novembro 27, 2006 Ola de novo! Tenho tido alguns travamentos na aplicacao cliente qdo tenta fazer um update em tabelas PostgreSQL. Uso o Zeoslib para acessa-las. Basicamente faço assim: db.StartTransaction;with query dobegin close; clear; add('select codigo from tabela for update'); open;end;if query.is empty then begin query.close; db.Rollback; exit;end;with query2 dobegin close; clear; add('update .... where codigo=:v_cod'); ParamByName('v_cod').AsInteger := query.FieldByName('codigo').AsInteger; ExecSQL;end;db.Commit; //***** fim na realidade eu crio a query em tempo de execucao e tudo é um pouco mais complexo que isso, mas para ilustrar é isto aí mesmo o que faço, como codigo principal. Acontece que tem horas que trava. A TZConnection chamada db, por exemplo, esta com o AutoCommit em TRUE e o TransactIsolation = tiReadCommitted A pergunta é, tá faltando alguma coisa que perdi aqui?? :mellow: Valeu!! Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Novembro 28, 2006 Você já conseguiu monitorar a linha ou o procedimento que esta sendo executado que faz com que a aplicação trave ? Compartilhar este post Link para o post Compartilhar em outros sites
Magno 0 Denunciar post Postado Novembro 28, 2006 o problema é q da exception no proprio zeos... ele vai dar o raise ali... por isso nao sei eu estou comendo bola em algum lugar... Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Novembro 28, 2006 No caso teria como mostrar a linha que é gerado o erro ? Pode indicar a linha do primeiro post... Ou então, já que ele gera um raise, mostrar a mensagem de erro... Compartilhar este post Link para o post Compartilhar em outros sites