[firebase-br] Dados excluídos automaticamente

Everton Patricio Pereira evertonkiai em gmail.com
Qua Ago 29 15:48:22 -03 2012


Moacir, acho pouco provável ser a controladora do HD, pois, do contrário, o
sistema operacional como um todo estaria instável, e não apenas o SGBD.

Gladiston, utilizei o gfix e ele não me retonou nenhum erro. É provável que
seja erro de sintaxe no sistema. No entanto, a tabela caixa só é acessada
pelo sistema em dois momentos:

O primeiro quando são inseridos, alterados ou excluídos dados manualmente.
Neste caso, é utilizado apenas o post/edit/delete no ClientDataSet em
conjunto com o ApplyUpdates.
O segundo quando são excluídos os lançamentos de uma venda que foi
cancelada. Neste caso, são utilizados comandos internos em um SQLDataSet
(delete form caixa where...).

O lançamento automático das entradas no caixa é feito através de um trigger
com um procedure, ou seja, seu processamento é feito internamente no banco,
sem a participação do sistema.

Além disso, creio que erros de sintaxe causam problemas frequentemente.
Estes erros acontecem eventualmente, de forma que o intervalo entre a
primeira e a segunda vez que aconteceu foi em média de seis meses. Já o
intervalo entre as dúas ultimas vezes que aconteceu foi de duas semanas.

Em 29 de agosto de 2012 14:23, Gladiston Santana
<gladiston em vidy.com.br>escreveu:

> Duas possiveis causas do meu ponto de vista :
> 1) Falha fisica
> Tira uma estatistica do banco, tente um gfix somente em readonly para saber
> se há danos estruturais.
> Se houver, prontamente backup/restore e depois procurar a causa e resolver.
> 2) Segurança
> Se ele estiver na internet, tente observar se não há sql injection.
> Além disso, veja se não existe a possibilidade da senha de acesso à base
> ser manipulada remotamente.
> 3) Erro de logica
> Seu sistema tem erros, podem ser concatenações que formam um SQL cuja
> sintaxe está correta, mas com aplicabilidade incorreta. Eu evito
> insert/update/delete dentro de sistemas para colocar em procedures, neste
> caso uma unica procedure faz insert/update/delete conforme os parametros
> passados, assim não me preocupo com gramaticas SQL dentro de sistemas.
> Claro que faço isso também porque no futuro posso portar meu sistema para
> outras linguagens, enfim esta abordagem evita esse tipo de erro.
> Outra preocupação são as triggers, riscos não calculados podem ocasionar
> recursividade entre tabelas<->triggers, sem falar que toda manutenção na
> base tem que começar por desligá-las, apenas acrescentar um campo (not
> null) no ibexpert vai fazer um belo estrago em todos os registros se essas
> triggers não estiverem calculado essa possibilidade.
>
> A primeira linha de raciocinio é um fato, as demais são apenas chutes, de
> fato, ninguem poderá te ajudar sem ter acesso ao sistema.
>
> PS: Torça para ser 1 ou 2 pois é mais fácil resolver, o item 3 é a teoria
> do caos.
>
> Gladiston Santana
> Departamento de TI
> Grupo Vidy
> Tel (11) 4787-3122 ramal 228
> Rod. Régis Bittencourt 3360 - Km 272,5
> Taboão da Serra - SP - CEP: 06793-000
> Visite nosso site: www.vidy.com.br
> Visite também : www.expolabor.com.br
>
>
>
>
>
> Em 29 de agosto de 2012 10:55, Everton Patricio Pereira <
> evertonkiai em gmail.com> escreveu:
>
> > Bom dia! Meus caros, em tem ocorrido alguns acontecimentos inusitados.
> Ex:
> > o sistema está funcionando normalmente e, de repente, somente as saídas
> da
> > tabela caixa são excluídas (todas as saídas), fazendo com que o saldo
> atual
> > fique com um valor absurdo. Isso acontecia raras vezes, mas agora em um
> > cliente especificamente está acontecendo em média uma ou duas vezes por
> > mês, de forma que temos que restaurar o backup do dia anterior, o que
> > logicamente é um certo incômodo, pois é necessário redigitar todo o
> > movimento do dia.
> > O sistema é desenvolvido em Delphi 7 com DBExpress e utiliza o Firebird
> > 1.5. No banco de dados, há procedures e triggers que fazem o lançamento
> > automático das entradas no caixa quando as vendas são encerradas.
> > Tenho duas suspeitas principais: vírus que corrompe o executável ou o
> > switch com problemas, mas não sei explicar cientificamente o motivo.
> > Somente desconfio porque quando isso aconteceu os computadores estavam
> com
> > alguns vírus e o servidor estava com problemas e reiniciando ou saindo da
> > rede automaticamente.
> >
> > Gostaria de saber a opinião de vocês, segundo suas experiências.
> >
> > Obrigado.
> > ______________________________________________
> > 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
> >
> ______________________________________________
> 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
>



Mais detalhes sobre a lista de discussão lista