[firebase-br] Verificar erros no banco de dados

Sandro Souza escovadordebits em gmail.com
Seg Abr 13 14:39:21 -03 2020


Em seg., 13 de abr. de 2020 às 14:06, Carlos H. Cantu <
listas em warmboot.com.br> escreveu:

> SS> Faz um bom tempo que fiz um programa em PHP para acessar uma base de
> dados
> SS> e gerar 3 scripts, que juntos, recriam a mesma base de dados por
> completo.
> SS> O primeiro script cria todas as tabelas e visões, mas sem as
> SS> regras/constraints ainda.
> SS> O segundo script contém apenas os INSERTs de todos os dados da base de
> SS> dados.
> SS> O terceiro script cria todas as regras/constraints, índices,
> SS> gatilhos/triggers, stored procedures.
> SS> Já uso isso a alguns anos, então com certeza, essa etapa está
> funcionando
> SS> tranquilamente.
>
> Use o isql pra extrair o script no 2.5 e use esse script pra gerar a
> base no FB 3. Se funcionar, então o problema está na sua geração de
> scripts.
>
>
Mestre Cantu, um script com comandos errados provocaria erros em quaisquer
versão do FB, não concorda?
Então se houvesse algum erro no script, geraria erros também na mesma
versão 2.5 do FB.
Eu sempre executo esses scripts via isql-fb no Linux, e sempre executaram
sem qualquer problema a mais de 2 anos.
Duvido que as versões mais novas do FB venham com menos comandos ou com
suporte a menos recursos que as versões anteriores.
O esperado é sempre que hajam mais recursos, e não menos.
Um CREATE TABLE que funciona na versão 1.0, não deixará de funcionar nas
versões posteriores, não é mesmo?
Os erros que houveram, como eu já citei, foram devido aos nomes que o
próprio FB gerou para as poucas regras/constraints que eu não defini um
nome (eu sempre defino nomes para as regras, mas esqueci de definir para
algumas poucas), e como agora temos regras de NOT NULL, são mais nomes de
regras gerados pelo FB, e foi apenas isso o que conflitou.
Nesse ponto, mesmo usando o isql/isql-fb para gerar o script de geração da
base de dados, cairia na mesma situação, devido a essas novidades.
Como o normal seria apenas restaurar um backup feito na versão anterior do
FB, então isso é uma situação muito rara de acontecer, pois só alguns
malucos (feito eu) que iriam usar esse método de migração via scripts,
extremamente menos eficiente que simplesmente restaurar um backup, mas como
eu pisei na bola nesse passo da restauração do backup, parti para esse
plano B (B de bos....) :D

SS> Mas vou fazer novos testes, em cenários diferentes, pois mesmo vendo o
> que
> SS> vi, custo a acreditar que tenha havido tanta perda de performance
> devido a
> SS> essa reescrita de código.
>
> Se conseguir reproduzir essa diferença de performance na criação da
> base de forma consistente, sugiro que abra um ticket no tracker do
> firebird.
>
> SS> poderia indicar algum bom site que monitore essa questão de
> SS> performance do FB?
>
> Não entendi bem o que você está querendo. Se for ferramentas para
> monitoramento de performance, as melhores são as da IBSurgeon:
> www.firebase.com.br/ibsurgeon
>
>
O que eu falei sobre essa questão de monitoramento de performance é sobre o
tempo gasto pelo FB, de versões diferentes, para executar o mesmo comando
no mesmo cenário.

Por exemplo, foi gerado um script de comandos de teste, criando uma nova
base de dados, criando tabelas, com regras, gatilhos, stored procedures, e
uma certa massa de dados para fazer alguns testes de performance.

A versão "A" do FB gastou "X" segundos (ou minutos) para executar todo o
script, sem qualquer erro.
A versão "B" do FB gastou "Y" segundos (ou minutos) para executar todo o
script, sem qualquer erro.
A versão "C" do FB gastou "Z" segundos (ou minutos) para executar todo o
script, sem qualquer erro.

Ou seja, apesar dos avanços que ganhamos a cada nova versão, como de fato,
ficou a questão da performance.
Realmente melhorou de A para B, de B para C, etc...?
Seria algo desse tipo.

Mais uma vez, muito obrigado pelo seu tempo e sua atenção.

[]s
> Carlos H. Cantu
> eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>
>
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista