[firebase-br] Problema com transactions

Maciel Soncini Bueno maciel em 2msolutions.com.br
Qua Ago 10 12:13:36 -03 2011


Saudações,

Meu cenário anterior era:

- Delphi 7 + DBExpress com dbexpint.dll + Firebird 1.5

Tenho algumas retinas que trabalhavam com Transactions. Tudo era perfeito.
Aquilo que estava em transaction e por algum motivo dava-se rollback ou algo
inesperado ocorria (travamentos, resets, derrubada de sistema, etc...) não
se confirma os registros.

Comecei a migrar meus bancos para a versão 2.5 do Firebird. O cenário
continuou o mesmo todavia, tive que atualizar a DLL do DBExpress.

Comprei a DLL da DEVART.

Meu cenário ficou:

- Delphi 7 + DBExpress com dbexpida.dll + Firebird 2.5

De imediato, tive que fazer algumas mudanças nas transactions. Alguns
SQLDATASET + CLIENTDATASET´S tiveram que mudar de posição ou seja, entrar
após o START TRANSACTION ou serem desativados / ativados após o START
TRANSACTION, vez que se não alterados, os registros sequer apareceriam para
o usuário dono da transação.

Ok, resolvido isso, realizado testes, etc... sistema / banco / DLL foram
atualizados.

Estou percebendo que alguns registros estão aparecendo no banco incompletos
ou seja, justamente o que não deveria ocorrer quando trabalho com
transactions.

Registros parcialmente preenchidos, faltando campos que seriam completados
mais a frente e assim por diante.

Quando atualizei a DLL também para os clientes que ainda estão com Firebird
1.5, verifiquei que o mesmo problema também ocorre.

Com Transaction, isso não deveria nunca ocorrer. Não sei o que está
acontecendo.

Alguém já passou por isso? Tem algum parâmetro no Firebird que devo ou posso
alterar?

Se texto o sistema e dou um cancelar (rollback) aparentemente está certo,
mas na prática, não é isso que está acontecendo.

MACIEL







Mais detalhes sobre a lista de discussão lista