Re: Pgdump error "invalid page header in block"

From: John R Pierce <pierce(at)hogranch(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Pgdump error "invalid page header in block"
Date: 2011-03-04 07:59:10
Message-ID: 4D709BCE.4080901@hogranch.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 03/03/11 11:47 PM, tuanhoanganh wrote:
> Yesterday, I had some problem with postgresql 9.0.2. Today i backup
> postgres and has error
>
> pg_dump: reading dependency data
> pg_dump: SQL command failed
> pg_dump: Error message from server: ERROR: invalid page header in
> block 299 of relation "pg_depend_depender_index"
> pg_dump: The command was: SELECT classid, objid, refclassid, refobjid,
> deptype FROM pg_depend WHERE deptype != 'p' ORDER BY 1,2
> pg_dump: *** aborted because of error
>
> Is there any way to fix it.

the bad news is, this generally indicates a hardware problem caused disk
data to be corrupted. this could be a memory error corrupting cache,
or the disk channel or drive. Or, it could be a issue with the OS file
system, failing under heavy concurrent random writes. Or it could
be a rare bug in postgres, but I've not heard of any block corruptions
in a long long time.

the good news is, its an index, and you can just reindex that table.
thats a system table. as the postgres user,

reindex index pg_depend_depender_index;

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Craig Ringer 2011-03-04 10:01:02 Re: invalid byte sequence
Previous Message tuanhoanganh 2011-03-04 07:47:44 Pgdump error "invalid page header in block"