invalid page header in block 29 of relation "pg_type"

From: Filip Krška <filip(dot)krska(at)comstar(dot)cz>
To: pgsql-admin(at)postgresql(dot)org
Subject: invalid page header in block 29 of relation "pg_type"
Date: 2008-06-02 12:55:09
Message-ID: alpine.LFD.1.10.0806021417520.3424@fkrska.pha.comstar.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Hello,

we have (maybe due to temporary Disk Array HW failure, which occurred on
the same day the pg_dump started to complain - array is now successfully
rebuilt) problem with consistency of pg_catalog.pg_type table.

pg_dumpall command gives following message:

pg_dump: SQL command failed
pg_dump: Error message from server: ERROR: invalid page header in block
29
of relation "pg_type"
pg_dump: The command was: SELECT tableoid, oid, typname, typnamespace,
(SELECT rolname FROM pg_catalog.pg_roles WHERE oid = typowner) as rolname,
typinput::oid as typinput, typoutput::oid as typoutput, typelem, typrelid,
CASE WHEN typrelid = 0 THEN ' '::"char" ELSE (SELECT relkind FROM pg_class
WHERE oid = typrelid) END as typrelkind, typtype, typisdefined FROM
pg_type
pg_dumpall: pg_dump failed on database "isdb", exiting

and exits, so we are not able to make fresh backup and recover the
database.

The same error (ERROR: invalid page header in block 29 of relation
"pg_type") give commands VACUUM, REINDEX on the table pg_catalog.pg_type.

I'm afraid of performing any tests, restarting the service, because
it is running production database and due to the inability of backing it
up we have only week old dump.

The service acts as there was no problem (INSERT, SELECT, DROP, CREATE,
ALTER TABLE works normally), only the dump and vacuum complains.

There was one damaged file (fortunetely belonging to an empty regular
table) in the $PGDATA/base/ directory, which caused I/O error, while
reading. After drop and create of the table, the partition with $PGDATA
seems error-free.

We run PostgreSQL 8.1.5 on CentOS release 3.8, 2.4.21-47.EL kernel,
x86_64 architecture.

Thanks for any advice

Best regards,

Filip Krska

--

ComSTAR spol. s r. o.
Třebohostická 14
100 31 Praha 10

HotLine (pev.): 261 305 432
HotLine (mob.): 777 343 857
>From pgsql-admin-owner(at)postgresql(dot)org Mon Jun 2 10:41:27 2008
Received: from localhost (unknown [200.46.204.183])
by developer.postgresql.org (Postfix) with ESMTP id 2C60B2E0124
for <pgsql-admin-postgresql(dot)org(at)developer(dot)postgresql(dot)org>; Mon, 2 Jun 2008 10:41:27 -0300 (ADT)
Received: from developer.postgresql.org ([200.46.204.71])
by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024)
with ESMTP id 53359-03-6
for <pgsql-admin-postgresql(dot)org(at)developer(dot)postgresql(dot)org>;
Mon, 2 Jun 2008 10:41:13 -0300 (ADT)
X-Greylist: from auto-whitelisted by SQLgrey-1.7.6
Received: from sss.pgh.pa.us (sss.pgh.pa.us [66.207.139.130])
by developer.postgresql.org (Postfix) with ESMTP id 300182E0085
for <pgsql-admin(at)postgresql(dot)org>; Mon, 2 Jun 2008 10:40:01 -0300 (ADT)
Received: from sss2.sss.pgh.pa.us (tgl(at)localhost [127.0.0.1])
by sss.pgh.pa.us (8.14.2/8.14.2) with ESMTP id m52DdbTo017315;
Mon, 2 Jun 2008 09:39:37 -0400 (EDT)
To: Alexander Stanier <alexander(dot)stanier(at)egsgroup(dot)com>
cc: "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: Vacuuming and template0
In-reply-to: <4843E458(dot)1090200(at)egsgroup(dot)com>
References: <4843E458(dot)1090200(at)egsgroup(dot)com>
Comments: In-reply-to Alexander Stanier <alexander(dot)stanier(at)egsgroup(dot)com>
message dated "Mon, 02 Jun 2008 13:15:20 +0100"
Date: Mon, 02 Jun 2008 09:39:37 -0400
Message-ID: <17314(dot)1212413977(at)sss(dot)pgh(dot)pa(dot)us>
From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
X-Virus-Scanned: Maia Mailguard 1.0.1
X-Archive-Number: 200806/6
X-Sequence-Number: 29344

Alexander Stanier <alexander(dot)stanier(at)egsgroup(dot)com> writes:
> Should we attempt to vacuum template0? I read a note somewhere saying
> that you can't vacuum template0 and don't need to. Is this correct?

No; yes. template0 was frozen when it was made.

regards, tom lane

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Hyatt, Gordon 2008-06-02 18:52:42 UUID generation functions
Previous Message Alexander Stanier 2008-06-02 12:15:20 Vacuuming and template0