Re: Database corrupted

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: "Yann ROBIN" <me(dot)show(at)gmail(dot)com>, "Scott Marlowe" <scott(dot)marlowe(at)gmail(dot)com>
Cc: <pgsql-admin(at)postgresql(dot)org>
Subject: Re: Database corrupted
Date: 2011-12-05 20:46:00
Message-ID: 4EDCD928020000250004385E@gw.wicourts.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com> wrote:
> Yann ROBIN <me(dot)show(at)gmail(dot)com> wrote:

>> Version 9.0.4 on debian squeeze 6.0 running in KVM with virtio
>> (kernel 2.6.32)

I don't know anything about KVM or vertio, so hopefully others will
step up.

>> I think we have a hard drive issue.

If at all possible, I would try to sort that out before continuing
recovery. You could keep piling up one disk error on top of
another; and each can make the others harder to sort out and fix.

>> kill -9 of the writer process
>
> Are you sure you killed all the postgres backends before
> restarting the server? If other backends are still running, with
> a dead postmaster, and you restart the server, instant corruption.

Yeah, I would make *absolutely* sure there isn't an orphaned
postgres process still running before trying any other recovery
steps.

Once you are sure that your storage system isn't nibbling away at
your data and there isn't an old postgres process running, you might
want to list the rows with the duplicate key value, and then delete
them. The safest course, once you've rebuilt the index, is to us
pg_dump and psql (or pg_restore) to rebuild the database.

Be sure to keep that copy of the data directory tree for at *least*
a few weeks after everything seems to be running fine. You may well
belatedly discover a reason to go back and fish for some data.

-Kevin

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Tom Lane 2011-12-05 20:53:52 Re: Database corrupted
Previous Message Scott Marlowe 2011-12-05 20:31:19 Re: Database corrupted