[firebase-br] LockMemSize

Eduardo Jedliczka (TeamFB) jedyfb em gmail.com
Ter Out 4 00:52:56 -03 2005


Jorge...

Aumentar o LockMemSize pode "amenizar" o seu problema... é como tomar 
remédio para dor de cabeça... ela passa, mas você sabe o que causava a dor 
de cabeça ???

Depois de quebrar a cabeça para resolver um problema de Lock, descobri que 
há apenas 3 possibilidades para que 96KB sejam pouco:

1º) Você tem muitos usuários simultâneos fazendo deletes e updates... 
enquanto não é dado um commit e/ou rollback, o banco mantém o lock na(s) 
pagina(s) que os dados, e seus índices estão armazenados...

2º) Você tem muitas conexões curtas sobre poucos registros, ou em outras 
palavras, imagine uma tabela que é alterada frequentemente por muitos 
usuários, mas tem pouquíssimos registros... uma hora ou outra você vai 
incluir, alterar ou apagar um registro, que está numa página "bloqueada"... 
só que enquanto este lock não é liberado, o banco vai bloqueando outras 
páginas até que .... bum.... não tem mais páginas livres...

3º) Modelo transacional errado ou incoerente... Ou em outras palavras, 
transações muito longas, (em tempo ou em quantidade de páginas alteradas) 
que não foram finalizadas.

Isto desconsiderando o problema de hardware, problema de outros softwares ou 
de banco corrompido, pois aí não tem regra...

mas só para responder, PORQUE A PERFORMANCE MELHOROU ???? imagine um arquivo 
(de metal) com várias gavetas, se tem mais gavetas, existe uma probabilidade 
maior de que você encontre uma gaveta vaga com poucas tentativas....

=========================
Eduardo Jedliczka
(Membro do TeamFB)
Apucarana - Pr
=========================

----- Original Message ----- 
From: "Jorge Henrique - Depto TI" <jorgehenrique em americamoveis.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, October 03, 2005 7:14 PM
Subject: [firebase-br] LockMemSize


Boa noite galera...

Fuçando algumas coisas aqui em busca de uma solução para as "quedas" ou 
"resets" ou seja lá o que for, do FB, testei o parametro LockMenSize do 
arquivo firebird.conf.

Meu servidor, entre outras palavras, é uma m****...

Utilizo Linux Fedora Core 2 com Kernel 2.6 e a versão do meu Firebird é 
1.5.3.4842 NPTL.

# ----------------------------
# Locking and shared memory parameters
#
# Bytes of shared memory allocated for lock manager.
# In Classic mode, the size given is used for the initial allocation. The
# table expands dynamically up to the limit of memory. In SuperServer, the
# initial size is also the final size.
# Default is 96K on Linux and Solaris, 256K on Windows.
#
# Type: integer
#
#LockMemSize = 262144

O que aconteceu foi que, quando ativei o referido parametro e restartei o 
servidor, notei significativo aumento na performance do mesmo, haja visto 
que, como explanado, no Linux o default é 96K e eu passei para 256K (como no 
windows).

O que quero saber é: Se o que percebi é mesmo verídico, o que isso pode 
provocar (em relação aos meus bancos de dados - corrupção, entre outras 
moléstias) e se as referidas quedas irão diminuir ou, preferencialmente, 
acabar.

Detalhe: os mesmos bancos em servidores Windows não caem, pelo menos, nunca 
vi!

[ ]´s

Jorge Henrique
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista