[firebase-br] RES: RES: Problemas Lentidão em base Firebird/Contato Carlos Cantu

Oliveira, José Augusto Siqueira de contabil em sivolc.ind.br
Qua Ago 24 09:40:46 -03 2011


Na verdade, Eurides, não necessariamente o problema esteja no firebird,
somente porque no postgree funcionou um pouco mais rápido, visto que, os
bancos possuem formas diferentes de tratar índices, consultas, tabelas
temporárias (usadas quando se faz ordenação por exemplo), na verdade, o que
pode ter acontecido, e que, da forma como foi feito o postgree executou de
forma melhor a seqüência de comandos, o que não quer dizer que se você
reformular os comandos, ou as plan's o firebird não possa executar de forma
ainda melhor, faca o teste do Cantu, quem sabe isso não pode lhe trazer
grandes melhoras, caso sim, você vai perceber que era um config do seu
banco, e não o problema no firebird mesmo, caso não melhore, e você ainda
queira usar o firebird,  refaça a rotina passo a passo levando em conta,
todos os detalhes de usos de índices, iterações dos for select, verifique a
quantidade de memória usada no servidor no momento da lentidão, se ele não
esta fazendo swap, essas coisas, quem sabe pode lhe dar uma luz. 

Oliveira, José Augusto Siqueira de
Sivolc  Móveis e Complementos
(32) 3531-4677 
contabil em sivolc.ind.br

"Aviso de confidencialidade profissional" - Esta mensagem eletrônica e seus
anexos são destinados exclusivamente ao(s) destinatário(s) acima e podem
conter informações confidenciais sujeitas a restrição legal de comunicação
entre as partes. Caso tenha recebido esta mensagem por engano, fica V.Sa.
ciente de que a distribuição, divulgação ou disseminação das informações
aqui contidas ou anexadas é terminantemente proibida, sujeitando o
responsável às penalidades aplicáveis. Assim, solicitamos a gentileza de
retorná-la de imediato ao remetente, eliminando-a definitivamente de seu
sistema. Em caso de dúvida, queira por favor entrar em contato conosco." 

"Confidentiality notice" - This message and its attachments are addressed
solely to the persons above and may contain privileged and confidential
communication. If you have received the message in error, the distribution
or dissemination of the content hereof is prohibited. Please return it
immediately to the sender and please delete the message from your system on
a permanent basis. Should you have any questions, please contact."


-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Eurides Baptistella
Enviada em: quarta-feira, 24 de agosto de 2011 08:37
Para: Carlos H. Cantu; FireBase
Assunto: Re: [firebase-br] RES: Problemas Lentidão em base Firebird/Contato
Carlos Cantu

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
______________________________________________
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

__________ Informação do ESET NOD32 Antivirus, versão da vacina 6405
(20110824) __________

A mensagem foi verificada pelo  ESET NOD32 Antivirus.

http://www.eset.com


 

__________ Informação do ESET NOD32 Antivirus, versão da vacina 6405
(20110824) __________

A mensagem foi verificada pelo  ESET NOD32 Antivirus.

http://www.eset.com
 
 

__________ Informação do ESET NOD32 Antivirus, versão da vacina 6405
(20110824) __________

A mensagem foi verificada pelo  ESET NOD32 Antivirus.

http://www.eset.com
 





Mais detalhes sobre a lista de discussão lista