Re: Theory about XLogFlush startup failures - Mailing list pgsql-hackers

From Mikheev, Vadim
Subject Re: Theory about XLogFlush startup failures
Date
Msg-id 3705826352029646A3E91C53F7189E32518484@sectorbase2.sectorbase.com
Whole thread Raw
In response to Theory about XLogFlush startup failures  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Theory about XLogFlush startup failures  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
> So the failure-to-start-up problem can be blamed entirely on 7.1's
> failure to do anything with LSN fields in pg_log pages.  I was able to

No, first reported problem can be blamed on RAM failures.

> So I am still dissatisfied with doing elog(STOP) for this condition,
> as I regard it as an overly strong reaction to corrupted data;
> moreover, it does nothing to fix the problem and indeed gets in
> the way of fixing the problem.

Totally agreed but..

> I propose the attached patch.
> What do you think?
> 
...
> +     if (XLByteLT(LogwrtResult.Flush, record))
> +         elog(InRecovery ? NOTICE : ERROR,

I suggest also to set some flag here if InRecovery,
to elog(STOP

DATA FILE(S) CORRUPTED!
RESTORE DATA FROM BACKUP OR
RESET WAL TO DUMP/MANUALLY FIX ERRORS

- or something like that -:) - after all data buffers
flushed.

What's wrong with this? It's not Ok automatically restart
knowing about errors in data.

Vadim


pgsql-hackers by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: RFD: schemas and different kinds of Postgres objects
Next
From: "Mikheev, Vadim"
Date:
Subject: Re: Savepoints