Em 21/07/2014 12:39, Matheus de Oliveira escreveu:
> 2014-07-21 11:20 GMT-03:00 <ngonz...@ig.com.br>: > >> Executei o comando acima: >> >> oid | relkind >> ---------------------------+--------- >> pg_toast.pg_toast_1088147 | t >> >> Olhei em [1] o tipo t (TOAST table) e nao faço ideia do que seja isto. >> >> _ > > humm... Não tenho boas notícias pra você. As tabelas TOAST armazenam dados de > uma determinada tabela. De forma superficial, dados que ocupam muito espaço > são comprimidos e salvos na TOAST, veja [1] para mais detalhes. > > Uma tabela TOAST está sempre associada a outra tabela, para achar qual é a > tabela que realmente apresenta problemas, você deve executar a seguinte > consulta: > > SELECT oid::regclass > FROM pg_class > WHERE reltoastrelid = 'pg_toast.pg_toast_1088147'::regclass; > >> É exatamente no meio do dump que ocorre o problema. > > Na verdade é na consulta do COPY. O fato é que qualquer consulta que atingir > (no caso fazer um "detoast") do(s) registro(s) corrompidos na tabela TOAST > vão apresentar problema. A solução seria identificar qual(is) é(são) o(s) > registro(s) problemático(s) e atualizá-lo(s) ou removê-lo(s). Uma forma é > usar LIMIT/OFFSET ou o ctid e ir recuperando registro por registro até um > erro ser apresentado. > >> Tem como fazer o dump ignorando esta pg_toast? > > Não. E nem faria sentido, tabelas tipo TOAST não são descartáveis, elas > realmente possuem partes dos dados de suas tabelas. > >> Posso fazer isso e restaurar sem problemas? > > Não. :-( > > [1] http://www.postgresql.org/docs/current/static/storage-toast.html [2] > > -- > Matheus de Oliveira > Analista de Banco de Dados > Dextra Sistemas - MPS.Br nível F! > www.dextra.com.br/postgres [3] > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > [1]Valeu Matheus, > Achei a tabela (tem 340mil registros) e estou fazendo um select com > limit/offset e quando identificar os registros com problema eu dou um jeito > de voltar de um outro servidor que tenho (replicado por bucardo). > > Agradeco a ajuda, > Nelson Links: ------ [1] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral [2] http://www.postgresql.org/docs/current/static/storage-toast.html [3] http://www.dextra.com.br/postgres/
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral