2015-06-12 14:36 GMT-03:00 Marcos - GMail <[email protected]>:

> O detalhe é, que ao fazer um simples select pelo campo primário, o banco
> não retorna o produto, e se fizer por qualquer outro, dá certo.
>
>
Pelo que você descreveu, aparentemente o problema está em índice
corrompido. Tente desabilitar o indexscan [1] e verificar o resultado (não
se preocupe com os SETs, eles só são validos durante sua sessão, não são
permanentes):

    SET enable_bitmapscan TO off;
    SET enable_indexscan TO off;
    SELECT * FROM "Produto" WHERE "CodigoInternoProduto" = <codigo com
problema>;

Se o registro for encontrado, então é certo que é problema de índice
corrompido, e a solução é executar um REINDEX [2]:

    REINDEX TABLE "Produto";

Para conferir, execute um RESET ALL; (para voltar o indexscan) e a consulta
novamente (pode usar o EXPLAIN também para verificar se está mesmo usando o
índice).

PostgreSQL-8.2.16
>

Cara, 8.2, sério? Essa versão já não está mais suportada há quase 4 anos
[3]. Pior ainda, a versão 8.2 chegou até à versão 8.2.23, você está na
8.2.16, ou seja, 7 releases abaixo.


> Servidor Windows 2008
> E estou com diversos problema por causa de vírus, onde o servidor esta
> acusando erro, o serviço do banco esta sendo parado por algo que acontece
> com o servidor, ou seja, cheio de problema este servidor.
>

Planeje uma atualização imediata de versão. Você está correndo grandes
riscos. Para a migração, utilize o processo pg_dump + pg_restore (ou psql).

[1]
http://www.postgresql.org/docs/8.2/static/runtime-config-query.html#RUNTIME-CONFIG-QUERY-ENABLE
[2] http://www.postgresql.org/docs/8.2/static/sql-reindex.html
[3] http://www.postgresql.org/support/versioning/

-- 
Matheus de Oliveira
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a