]> granicus.if.org Git - postgresql/commit
Allow WAL record header to be split across pages.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Sun, 24 Jun 2012 15:27:10 +0000 (18:27 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Sun, 24 Jun 2012 15:35:56 +0000 (18:35 +0300)
commit061e7efb1b4c5b8a5d02122b7780531b8d5bf23d
tree7f7bb52713c38478b11bc1bd2a858a0ef80fc52a
parent20ba5ca64c7c858400f845f8ded330604e2c8d61
Allow WAL record header to be split across pages.

This saves a few bytes of WAL space, but the real motivation is to make it
predictable how much WAL space a record requires, as it no longer depends
on whether we need to waste the last few bytes at end of WAL page because
the header doesn't fit.

The total length field of WAL record, xl_tot_len, is moved to the beginning
of the WAL record header, so that it is still always found on the first page
where a WAL record begins.

Bump WAL version number again as this is an incompatible change.
src/backend/access/transam/xlog.c
src/bin/pg_resetxlog/pg_resetxlog.c
src/include/access/xlog.h
src/include/access/xlog_internal.h