Em 05-09-2013 09:57, JotaComm escreveu:
Quanto tá o autovacuum_vacuum_cost_delay e
autovacuum_vacuum_cost_limit ?
autovacuum_vacuum_cost_delay = 20ms
autovacuum_vacuum_cost_limit = -1
Como autovacuum_vacuum_cost_limit = -1, ele usa vacuum_cost_limit. Tá
quanto lá?
O autovacuum tá desligado? Deve estar, senão não estaria rolando
esse prevent wraparound.
Não. O autovacuum esta ligado (autovacuum = on).
O mais estranho é que tenho tabelas infinitamente maiores e roda sem
problemas. Também acho estranho que facço um pg_cancel_backend, retorna
TRUE e mesmo assim o processo continua em execução.
Cara, wraparound é pesado, vai na tabela toda, não tem jeito.
O que o Euler recomendou é o melhor: mata o autovacuum e já inicia um
VACUUM na mão.
Mas faz assim pra acabar o mais rápido possível (só que vai fazer I/O
pra burro e interferir em transações, então, faça em horário de baixo
movimento):
SET vacuum_cost_delay = 0;
VACUUM ANALYZE tabela;
Se não der tempo/resolver, um dump/restore da tabela seria bem vindo, já
que ela não é tão grande, ou um CLUSTER.
[]s
__________________________________
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: fla...@4linux.com.br
______________________________
FREE SOFTWARE SOLUTIONS
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral