[firebase-br] melhor cenário para resolver problemas com transação

Marcelo Fortes fortes.m em gmail.com
Ter Ago 31 10:29:00 -03 2010


Amigão no Seu caso eu creio que a melhor saída é Fib-Plus da DevRace são
componentes irmãos do IBX nmuito parecidos só que turbinados e
melnhorados... acompanhe uns posts meus atráz e vc vai ver que tem como usar
duas Transactions para um conjunto de datasets uma transaction para leitura
e outra para escrita e update, desse modo vc praticamente não tem nenhum
problema de deadlock além de ser mais fácil de dar manutenção e desenvolver,
deixando no it   a transaction de inserts setado com auto-commit, e a trans
dela para commit, mas com a outra transação de leitura com commit retainning
só para leitura.
A compatibilidade com IBX é grande mais tem muitas melhorias.., não tem
TTable  somente DataSets turbinados que já tem SQLupdate embutido, fas os
inserts, deletes, updates automaticamente, batch updates para processamento
em lote sem esquecer a performance...

Dá uma olhada aqui,

http://www.devrace.com/en/fibplus/

é um excelente investimento. Tem um link de exemplos também nesta página.


Sucesso !!!

Marcelo Fortes


Em 30 de agosto de 2010 18:46, Fernando Filho <nanfilho em gmail.com> escreveu:

> Olá pessoal, peço se possível para me ajudar nesse problema (entrando um
> pouco em delphi , espero que não seja muito OFF ^^ )
>
> é o seguinte, tenho um sistema usando componentes da paleta interbase
> (famoso ibx)
> infelizmente hoje vejo que não foi uma boa, pensei numa coisa pequena (anos
> atras), a empresa cresceu pacas, e hoje essa arquitetura está me dando dor
> de cabeça, alguns modulos do sistema precisam de um controle real de
> transação por questões de segurança e quando tento colocar alguma coisa ,
> começam os lock conlifcts, ai tenho q deixar do jeito q tá, mas ai vira e
> mexe aparece um caixa com 2 lançamentos iguais (algum erro no meio do
> processo e o usuario tenta incluir novamente, como não deu rollback ele
> inclui denovo..), fora o acumulo de transações ativas, acontece algumas
> vezes por semana de o servidor simplesmente estourar a memoria, e eu ter
> que
> restartar o firebird.
>
> resumo basico: uso o transaction como read commited e commit rettaining em
> todo os metodos insert, delete, update do sistema. ok já sei que não é
> ideal
> e estou procurando a melhor maneira pra resolver, por isso peço ajuda aos
> amigos do grupo, levando em conta que o sistema é bem grande então para
> ajeitar isso imagino que vai ser F*&¨%
>
> enfim, meus cadastro simples são com table (outra porcaria). já pensei até
> em trocar a conexão para Dbexpress, mas seria uma manutenção MONSTRO
> perderia uns bons meses nisso, se eu tiver como resolver no ibx melhor, mas
> se tiver que mudar vo mudar, pois não aguento mais esses problemas.
>
> desculpem o email grande, e agradeço a ajuda desde já :)
>
>
> --
> Atenciosamente
> Fernando Filho
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista