On Sat, Jul 16, 2011 at 2:30 PM, Tom Lane <t...@sss.pgh.pa.us> wrote:

> Ken Caruso <k...@ipl31.net> writes:
> > Sorry, the actual error reported by CLUSTER is:
>
> > gpup=> cluster verbose tablename;
> > INFO:  clustering "dbname.tablename"
> > WARNING:  could not write block 12125253 of base/2651908/652397108
> > DETAIL:  Multiple failures --- write error might be permanent.
> > ERROR:  could not open file "base/2651908/652397108.1" (target block
> > 12125253): No such file or directory
> > CONTEXT:  writing block 12125253 of relation base/2651908/652397108
>
> Hmm ... it looks like you've got a dirty buffer in shared memory that
> corresponds to a block that no longer exists on disk; in fact, the whole
> table segment it belonged to is gone.  Or maybe the block or file number
> in the shared buffer header is corrupted somehow.
>
> I imagine you're seeing errors like this during each checkpoint attempt?
>

Hi Tom,

Thanks for the reply.

Yes, I tried a pg_start_backup() to force a checkpoint and it failed due to
similar error.


>
> I can't think of any very good way to clean that up.  What I'd try here
> is a forced database shutdown (immediate-mode stop) and see if it starts
> up cleanly.  It might be that whatever caused this has also corrupted
> the back WAL and so WAL replay will result in the same or similar error.
> In that case you'll be forced to do a pg_resetxlog to get the DB to come
> up again.  If so, a dump and reload and some manual consistency checking
> would be indicated :-(
>

Before seeing this message, I restarted Postgres and it was able to get to a
consistent state at which point I reclustered the db without error and
everything appears to be fine. Any idea what caused this? Was it something
to do with the Vacuum Full?

Thanks

-Ken


>
>                        regards, tom lane
>

Reply via email to