[firebase-br] Re: 100% CPU

Eduardo Jedliczka (TeamFB) jedyfb em gmail.com
Qua Out 5 12:31:28 -03 2005


Entendo bem o que você diz... muitas pessoas torcem o nariz quando explico 
que no FB um select rola dentro de uma transação, e portanto, requer um 
commit ou rollback...

Mas tem o outro lado também, assim, tenho controle absoluto (SNAPSHOT) dos 
dados que estou vendo e ou gerando naquele relatório que pode comumir muito 
tempo.

Naturalmente, os bancos tornam os selects sempre "atuais" mas criam um 
"complicador" para criar um snapshot. no FB é dada prioridade sobre a 
consistência dos dados...

Ou seja, é apenas uma questão de ponto de vistas... Não tem forma certa ou 
errada, apenas são diferentes, e tem suas virtudes e falhas.

Sucesso,

=========================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - Pr
=========================
----- Original Message ----- 
From: "Pha" <lista em pha.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, October 05, 2005 11:17 AM
Subject: Re: [firebase-br] Re: 100% CPU


> Não seria um pau, e assim que ele funciona, talves o driver para interbase
> pudesse fazer este commit de tempos em tempos.
>
> O problema seria do Driver e não do DBX pois a maioria dos bancos não
> necessita que uma transação seja aberta para leitura, está é uma
> caracteristica do FB/Interbase então o driver que deveria ser responsavel
> por este controle de transação implicita.
>
> Mais o Interbase e o Firebird também tem culpa, pois ambos deveriam ter
> algum meio de resolver este problema com transações de leitura e não
> passar esta responsabilidade para o componente ou driver, posso estar
> enganado mais o PostGree tem uma arquitetura parecida com o IB/FB e não
> tem este problema.
>
> Paulo Henrique Albanez
> VirtualSystem Informática Ltda
> Nova Odessa / SP - Brazil
> Membro do TeamFB (FireBase)
>
>> Prezados
>>
>> Será algum pau no DBX ?
>>
>> abs
>>
>> Eduardo
>>
>> ----- Original Message -----
>> From: "Eduardo Jedliczka (TeamFB)" <jedyfb em gmail.com>
>> To: "FireBase" <lista em firebase.com.br>
>> Sent: Tuesday, October 04, 2005 5:53 PM
>> Subject: Re: [firebase-br] Re: 100% CPU
>>
>>
>>> ops... fugi da escola... 136 mil - 96 mil é 40 mil... e não 20 mil...
>>>
>>> Sendo assim, quis dizer que tem pouco menos de 41 mil transações
>>> ocorreram
>>> após a primeira transação não finalizada, ou seja, possívelmente o banco
>>> está mantendo várias versões distintas destes dados, por isto o problema
>>> de lentidão durante um commit...
>>>
>>> Sucesso,
>>>
>>> ========================> Eduardo Jedliczka
>>> Membro do TeamFB - FireBase
>>> Apucarana - Pr
>>> ========================> ----- Original Message -----
>>> From: "Eduardo Jedliczka (TeamFB)" <jedyfb em gmail.com>
>>> To: "FireBase" <lista em firebase.com.br>
>>> Sent: Tuesday, October 04, 2005 5:43 PM
>>> Subject: Re: [firebase-br] Re: 100% CPU
>>>
>>>
>>>> Não faço idéia de como o DBX controla as transações...
>>>>
>>>> talvez o problema seja alguma transação de leitura que está ficando
>>>> aberta...
>>>>
>>>> ele disse que lança 20 mil registros por dia, e olhe lá... pouco menos
>>>> de
>>>> 21 mil transações...
>>>>
>>>> deve ter feito algumas leituras e deixado aberto, aí o banco começa a
>>>> ficar lerdo mesmo...
>>>>
>>>> Também reparei que ele utiliza o Dialect 1... isto não interfere no
>>>> desempenho, mas interfere na "eficiência" do garbage collection e de
>>>> alguns índices.
>>>>
>>>> Em resumo, o problema do meu chará, é o mais óbvio e comum... problemas
>>>> no modelo transacional...
>>>>
>>>> Sucesso,
>>>>
>>>> ========================>> Eduardo Jedliczka
>>>> Membro do TeamFB - FireBase
>>>> Apucarana - Pr
>>>> ========================>>
>>>> ----- Original Message -----
>>>> From: <listas em warmboot.com.br>
>>>> To: <lista em firebase.com.br>
>>>> Sent: Tuesday, October 04, 2005 5:34 PM
>>>> Subject: [firebase-br] Re: 100% CPU
>>>>
>>>>
>>>>> Database header page information:
>>>>>        Flags                   0
>>>>>        Checksum                12345
>>>>>        Generation              136964
>>>>>        Page size               4096
>>>>>        ODS version             10.1
>>>>>        Oldest transaction      52
>>>>>        Oldest active           96581
>>>>>        Oldest snapshot         96103
>>>>>        Next transaction        136956
>>>>>        Bumped transaction      1
>>>>>        Sequence number         0
>>>>>        Next attachment ID      0
>>>>>        Implementation ID       16
>>>>>        Shadow count            0
>>>>>        Page buffers            4096
>>>>>        Next header page        0
>>>>>        Database dialect        1
>>>>>        Creation date           Oct 2, 2005 12:56:05
>>>>>
>>>>>    Variable header data:
>>>>>        Sweep interval:         0
>>>>>        *END*
>>>>>
>>>>> Veja o numero da sua transação mais antiga e ainda ativa: 96581
>>>>>
>>>>> Veja o numero da sua proxima transação: 136956
>>>>>
>>>>> Ou seja, tem alguma transação aí segurando o garbage collection,
>>>>> provavelmente ativa há várias horas.
>>>>>
>>>>> SO> Eu percebi uma coisa, é  quando está gravando um monte de coisas
>>>>> SO> no banco, proncipalmente arquivos em  Lote.
>>>>>
>>>>> Isso indica que seu controle transacional não está OK.
>>>>>
>>>>> Além disso, inserções em massa devem ter commits em blocos de 500 ou
>>>>> 1000
>>>>> registros. Acredito que vc esteja commitando de um em um.
>>>>>
>>>>> Lembre-se tb de rodar o sweep periodicamente.
>>>>>
>>>>> []s
>>>>>
>>>>> Carlos (Membro do TeamFB - FireBase)
>>>>> WarmBoot Informatica - http://www.warmboot.com.br
>>>>> FireBase - http://www.FireBase.com.br
>>>>>
>>>>> SO>
>>>>> SO>
>>>>> SO> Edu e Cantu (Parece dupla  caipira!!!)
>>>>> SO>
>>>>> SO>
>>>>> SO>
>>>>> SO> Amigos, segue o Gstat das  15:30h, quando estava fritando o
>>>>> processador.
>>>>> SO>
>>>>> SO>
>>>>> SO>
>>>>> SO> Eu percebi uma coisa, é  quando está gravando um monte de coisas
>>>>> SO> no banco, proncipalmente arquivos em  Lote.
>>>>> SO>
>>>>> SO>
>>>>> SO>
>>>>> SO> Abaixou está o meu codigo  Delphi para gravação.
>>>>> SO>
>>>>> SO>
>>>>> SO>
>>>>> SO> Obrigado
>>>>> SO>
>>>>> SO>
>>>>> SO>
>>>>> SO> Eduardo de  Carvalho
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> 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
>>>>
>>>>
>>>> ______________________________________________
>>>> 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
>>>
>>>
>>> ______________________________________________
>>> 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
>>
>>
>> ______________________________________________
>> 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
>>
>
>
>
> ______________________________________________
> 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