Pessoal, preciso de uma ajuda para solucionar um problema que se estende a vários dias.
Temos um modelo de banco de dados que é utilizado em mais de 200 clientes, todos para uma base OLTP de um sistema ERP. Em nenhum outro cliente este problema aparece, somente em um cliente que roda Windows 2003 Server e o banco PostgreSQL 8.2.13. A estrutura física compreende 8 VIEWS (cada uma relacionada a uma entidade independente). Para exibir as informações de venda (que envolve estas 8 VIEWS) existe uma outra VIEW "superior" chamada FATURAMENTO_VIEW_SRC, que relaciona todas as demais para trazer resultados analiticos. Esta view superior foi montada para servir relatórios de faturamento, e é materializada em uma tabela com a mesma estrutura através de TRIGGERS. Pois bem... ocorre um comportamento anormal em um cliente, apenas neste cliente dentre mais de 200 outros. Quando é gravado uma nota fiscal de venda, um TRIGGER é disparado para gravar os dados da FATURAMENTO_VIEW_SRC na tabela FATURAMENTO, e esporadicamente - sim, somente de vez em quando - ocorre um erro: "Relation with OID 184407 does not exists" Não utilizamos nenhuma tabela temporária, não é realizado nenhum DROP durante a montagem da VIEW e o TRIGGER apenas faz um "INSERT INTO ... SELECT FROM ...". O pior de tudo, é que este OID não existe na tabela pg_class. Acontece ao executar um comando INSERT, se depois do erro eu tentar executá-lo novamente com os mesmos valores, tudo segue-se normalmente. Eu já tentei fazer um backup completo do banco, realizar um DROP DATABASE, depois restaurá-lo novamente para verificar se isso corrige o problema, mas não tive sucesso. Alguém tem alguma idéia? NOTA: Já copiamos a base de dados do cliente para nosso laboratório aqui na empresa e aqui não conseguimos simular o problema. -- Tiago J. Adami Dois Vizinhos - Paraná - Brasil
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
