[firebase-br] RES: Problemas Lentidão em base Firebird/Contato Carlos Cantu
Eurides Baptistella
eurides.baptistella em gmail.com
Qua Ago 24 08:36:48 -03 2011
Carlos, ainda não consegui fazer o teste com o parâmetro “no reserve”. Farei
na sequencia pois a base é de 10Gb (vai demorar um pouco).
O Firebird usado é o Classic Server (CS).
Os testes foram feitos da seguinte maneira:
1º Reiniciei o servidor (limpar qualquer sujeira);
2 º Executei a integração de documentos; (Demora 3 min para integrar 11926
documentos)
3 º Exclui os documentos; (Primeira coleta de informações, exclusão é quase
instantânea)
4º Integrei novamente os documentos; (Demora aprox.. 20min para integrar os
mesmos 11926 documentos)
5º Exclui os documentos; (Segunda coleta de informações, exclusão demorou
20min).
A frase abaixo está equivocada, quero dizer que o problema é a lentidão.
EB>Segunda Execução (Processo com problemas e lento)
O Código da procedure quando alterada (sem a utilização da trigger) é o
seguinte:
procedure pcd_exclui_lancamentos
FOR SELECT EDT, LTE, LCT
FROM DOCUMENTOS
WHERE ((:pEmp = ',0,') or (:pEmp Containing SubString(','||EOR||','
from 1 for 5)))
and DTC between :pDtaIni and :pDtaFin and ITG='S'
INTO :iEdc, :iLte, :iLcc
DO BEGIN
if (iEdc is null) then iEdc = 0;
if (iLte is null) then iLte = 0;
if (iLcc is null) then iLcc = 0;
/* EXCLUI OS LANÇAMENTOS DO CAIXA */
DELETE FROM CAIXA /* aqui dispara a trigger */
WHERE Emp = :iEdc and Lte = :iLte and Cod = :iLcc;
update TOTALIZADORA
set TLC = TLC - 1
, TVC = TVC - 1
, TDC = TDC - 1
, TCC = TCC - 1
, DTM = 'today'
, USR = 0
where EMP = :iEdc
and COD = :iLte;
END
Estou iniciando os testes com o parâmetro “no reserve”. Na sequencia
postarei os resultados.
No ponto em que estou (testes que realizei) não tenho dúvidas de que o
problema está no Firebird. Os testes realizados em Postgres foram ótimos,
exportei os dados dessa base e inseri na outra, funcionou sem problemas.
Ai pergunto, tirando a questão do “no reserve”, o que mais pode estar
afetando o desempenho de tal forma?????
*--
Eurides V. Baptistella
**E-mail:* eurides.baptistella[@]gmail.com <eurides.baptistella em gmail.com>
*Fone:* +55 (49) 9125-6572
Mais detalhes sobre a lista de discussão lista