[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