Re: How to reindex when unable to open relation?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Shoaib Mir" <shoaibmir@xxxxxxxxx> writes:
> On Tue, Feb 26, 2008 at 5:13 PM, Darren Reed <darrenr+postgres@xxxxxxxxxxxx>
> wrote:
>> pg_dump: failed sanity check, parent table OID 16401 of pg_rewrite entry
>> OID 16403 not found
>> 
>> Is this recoverable without using a backup?

> Looks like to me corrupted system catalog!

Yah.

> I guess when you dropped the table it didn't delete the record from
> pg_rewrite was not deleted when the parent table was dropped. So you can try
> doing something:
> delete from pg_rewrite where oid = 16403;

That's not gonna help for these:

>> ERROR:  could not open relation with OID 16399
>> ERROR:  index "pg_attrdef_adrelid_adnum_index" contains unexpected zero 
>> page at block 1
>> ERROR:  could not open relation with OID 16389
>> ERROR:  could not open relation with OID 16393

I'm afraid Darren's DB has taken multiple mortal hits --- the evidence
here suggests that at least one pg_class page and at least one
pg_attrdef_adrelid_adnum_index page have been silently zeroed out by
*something*.  The index could be reconstituted by REINDEX, if its
underlying table is undamaged; but no amount of reindexing will bring
back missing table rows :-(

There's no info here to suggest exactly what went wrong; Darren, do you
want to fess up to any hardware problems, tripped-over power cords, or
such?  What PG version is this anyway?

			regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at

                http://www.postgresql.org/about/donate

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux