On 2014-06-03 01:36:40 +0100, Greg Stark wrote:
> On Mon, Jun 2, 2014 at 6:40 PM, Andres Freund <andres@2ndquadrant.com> wrote:
> >
> > Did you check whether all the necessary FPIs were generated? That'd be
> > my very first suspect.
>
> Really? Shouldn't only the last one matter? All the other ones will be
> overwritten later by later full page writes anywys, no? Also, i
> thought this was pretty much underlying infrastructure that would be
> pretty hard to get wrong in just one call site.
Well, if we missed a single FPI somewhere - e.g. by accidentally not
filling XLogRecData->buffer or by confusing which bkp block numbers
refer to what (both happened during 9.4 development) you'd potentially
get a torn page. And that'd very well explain such an error message.
Your split record had only one backup block. I'd manually make sure all
the other ones previously had some. You probably need to look in the nbt
code to see which bkp block refers to what.
Greetings,
Andres Freund
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services