[firebase-br] 100% CPU

Rodolpho da Silva Nascimento rnascimento em cmsolucoes.com.br
Ter Jul 5 09:58:15 -03 2005


Rapaz, o mais interessante é que ontem, eu tive este problema e após testes, 
vi o porque isto acontecia.
   Eu tinha uma determinada qry, que fazia suas join's e etc...Em uma das 
condições do WHERE, existia a seguinte condição:
      p.codigointerno = :codigointerno or p.codbarras = :codbarras

Ao rodar esta qry, tanto no Delphi, como no IBExpert, consumia 100% da CPU e 
simplesmente, não retornava nada, travava o aplicativo e a única solução era 
matar(kill) o processo.
Tentei fazer desta maneira:
    p.codigointerno = :codigointerno

Aí funcionou perfeitamente. Após uma análise, resolvi fazer o seguinte: 
Coloquei parênteses "( )" em todas as condições do WHERE, ficando + ou - 
assim:
      ((p.codigointerno = :codigointerno) or (p.codbarras = :codbarras))

E sabe qual foi o resultado? Funcionou tão bem quanto o segundo teste.
Esse problema aconteceu comigo no Windows, visto que vc usa Linux. Tmb uso 
Linux mais ainda não fiz este teste no Linix para ver se vai acontecer o 
mesmo problema.

Espero que com esta dica, vc consiga resolver o seu problema.....

Abraços...

Rodolpho






----- Original Message ----- 
From: "marlon david de souza" <marlon em sysmo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, July 05, 2005 6:17 AM
Subject: [firebase-br] 100% CPU


Bom dia,

  FB1.5 (nptl) + Linux (kernel 2.6.x)

  Algumas vezes tem acontecido de o Firebird ocupar 100% da CPU do servidor 
e,
por isso, parar de responder, tendo de ser abortado (kill).
  Estive lendo a última edição da SQLMagazine e lá consta que o Interbase, 
até
a versão 7.0, também tinha esse problema.
  Será que isso já foi resolvido no FB?

Sem mais,

----------------------
Marlon David de Souza
Desenvolvimento
Sysmo Informática Ltda

______________________________________________
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