[firebase-br] LOCK com IBX

Carlos H. Cantu (TeamFB) listas em warmboot.com.br
Sex Fev 17 11:56:58 -03 2006


Eu sugiro que vc, de tempos em tempos, feche todas as transações da
aplicação com um COMMIT. Mesmo transações de select "somente leitura"
prendem o garbage collection quando ficam abertas por muito tempo.

[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br

cub> Olá todos !
cub> Desenvolvi uma aplicação utilizando IBX+Firebird.
cub> Estava funcionando tudo as mil maravilhas e de uma hora para outra o sistema
cub> começou a travar. Com ajuda dos colegas da lista e com pesquisas feitas na web
cub> descobri que o problema está nos LOCKs, pois o sistema travava e enviava a
cub> mensagem : "LOCK MANAGER OUT OF ROOM". Utilizando o utilitário fb_lock_print
cub> verifiquei o conteúdo.
cub> Aumentei o valor do parâmetro LockMemSize no firebird.conf. e resolveu ou pelo
cub> menos remediou problema. Mas acredito não ser a melhor solução.
cub> Em minha aplicação utilizo um IBTRANSACTION para cada DATASET (seja um IBQuery
cub> ou um IBDataSet) e tenho separados consultas de manutenções. Utilizo tb os
cub> componentes DataWare. Após as Operações de Update, Insert, Delete executo um
cub> Commit. Como a consulta é separada da manuteção apenas atualizo os dados da
cub> consulta. A configuração da minha transação é a seginte: read_committed e
cub> rec_version.

cub> Aí me surgiu a sguinte dúvida : Como o IBX sempre precisa de uma Transação ATIVA
cub> esse problema de lock irá sempre ocorrer ? Alguém poderia explanar sobre o
cub> assunto ?

cub> Grato pela atenção !!

cub> Cristiano






Mais detalhes sobre a lista de discussão lista