Skip site navigation (1) Skip section navigation (2)

unexpected chunk number 1953460082 (expected 52) for toast value 478112 in pg_toast_377028

From: Calabaza <calalinux(at)gmail(dot)com>
To: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: unexpected chunk number 1953460082 (expected 52) for toast value 478112 in pg_toast_377028
Date: 2011-10-15 16:35:30
Message-ID: CADA3Qfyg6dt5kEwr9CUkjHXpEgiw+soCJpHzdY7JjarwTQaO6w@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Buenos días, amigos,
espero puedan darme algunas indicaciones con el siguiente

Problema:
No puedo realizar una copia de seguridad de una DB que se utiliza
para guardar ficheros BLOB (fotografias de marcaciones de usuarios).

La causa:
Días antes del problema, la partición en donde reside el directorio DATA
se ha llenado, por lo que ha dejado de funcionar.

Log de ese día:

2011-09-07 17:21:17 PYTERROR:  could not extend relation base/17133/377032:
No queda espacio en el dispositivo
2011-09-07 17:21:17 PYTHINT:  Check free disk space.
2011-09-07 17:21:17 PYTCONTEXT:  SQL statement "insert into
mi_tabla (campo_id, campo1) values ( $1 ,  $2)"
	PL/pgSQL function "ins_mi_tabla" line 2 at SQL statement
2011-09-07 17:21:17 PYTSTATEMENT:  select * FROM ins_mi_tabla($1,$2)

2011-09-07 17:21:21 PYTLOG:  could not write temporary statistics
file "pg_stat_tmp/pgstat.tmp": No queda espacio en el dispositivo
2011-09-07 17:21:21 PYTLOG:  could not write temporary statistics file "pg_sta

Lo realizado:
a) Intento de realizar copia de seguridad, el que dio el siguiente error:

2011-09-17 14:15:38 PYTERROR:  unexpected chunk number 1953460082 (expected 52)
for toast value 478112 in pg_toast_377028
2011-09-17 14:15:38 PYTSTATEMENT:  COPY mi_tabla (campo_id, campo1) TO stdout;

b) Detuve el servicio
c) Reubicación del directorio data (Copiado) a una partición
   diferente con más espacio libre.
d) Cambio de path en el postgresql.conf e Inicio del servidor.

Resultados / Sugerencias de Búsquedas en Internet:
[0]. http://archives.postgresql.org/pgsql-admin/2008-09/msg00287.php

Si bien, mi Inglés no es tan bueno, creo entender que el trabajo
aquí realizado fue:
a) Identificar el registro dañado
b) Dumpear el schema de la DB
c) Dumpear los datos de todas las tablas a excepción de la que está defectuosa
d) Obtener los registros previos y posteriores al "defectuoso" e insertarlos
   en otra BD.

[2]. http://serverfault.com/questions/152442/pg-dump-error-message-from-server-error-missing-chunk-number-0-for-toast-value
Según este link, indica que debe borrarse el registro "defectuoso".


[3]. http://postgresql.1045698.n5.nabble.com/BUG-5929-ERROR-found-toasted-toast-chunk-for-toast-value-260340218-in-pg-toast-260339342-td3704493.html

Y aquí hay varias observaciones, de las cuales he verificado los parámetros:
fsync y full_page_writes estan comentados en el postgresql.conf,
lo que, según el link, indica que estan en ON.

La versión completa del postgresql: Select version();
"PostgreSQL 8.4.1 on i686-pc-linux-gnu, compiled by GCC gcc (GCC)
3.4.6 20060404 (Red Hat 3.4.6-10), 32-bit"

Datos del server:
openSUSE 11.1
Linux linux-mh 2.6.27.29-0.1-pae #1 SMP 2009-08-15 17:53:59 +0200
i686 i686 i386 GNU/Linux


Pregunta:
¿Que sugieren que pueda hacer para volver a un estado correcto la BD
para poder realizar un backup completo, preferentemente sin
hacer el recorrido registro a registro sugerido
en los links [0] y [1] asumiendo que se pueden descartar
los registros defectuosos?

Desde ya muchas gracias por su tiempo.

-- 
§~^Calabaza^~§ from Barrio Obrero, Asunción, Paraguay
http://calablogbaza.blogspot.com/

http://es.wikipedia.org/wiki/Top-posting
http://es.wikipedia.org/wiki/Netiquette

Responses

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2011-10-15 19:51:58
Subject: Re: unexpected chunk number 1953460082 (expected 52) for toast value 478112 in pg_toast_377028
Previous:From: Sergio Sánchez RivasDate: 2011-10-15 03:24:23
Subject: Re: In Memoriam: Falleció Dennis Ritchie

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group