Re: XLog changes for 9.3 - Mailing list pgsql-hackers

From Tom Lane
Subject Re: XLog changes for 9.3
Date
Msg-id 10252.1339088038@sss.pgh.pa.us
Whole thread Raw
In response to Re: XLog changes for 9.3  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: XLog changes for 9.3
List pgsql-hackers
Andres Freund <andres@2ndquadrant.com> writes:
> dance. If the record can be smeared over two pages there is no point in 
> storing it aligned.

I think this is not true.  The value of requiring alignment is that you
can read the record-length field without first having to copy it somewhere.
In particular, it will get really ugly if the record length field itself
could cross a page boundary.  I think we want to be able to determine
the record length before we do any data copying, so that we can malloc
the record buffer and then just do one copy step.

The real reason for the current behavior of not letting the record
header get split across multiple pages is so that the length field is
guaranteed to be in the first page.  We can still guarantee that if
we (1) put the length field first and (2) require at least int32
alignment.  I think losing that property will be pretty bad though.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Avoiding adjacent checkpoint records
Next
From: Simon Riggs
Date:
Subject: Re: slow dropping of tables, DropRelFileNodeBuffers, tas