• Heikki Linnakangas's avatar
    Move WAL continuation record information to WAL page header. · 20ba5ca6
    Heikki Linnakangas authored
    The continuation record only contained one field, xl_rem_len, so it makes
    things simpler to just include it in the WAL page header. This wastes four
    bytes on pages that don't begin with a continuation from previos page, plus
    four bytes on every page, because of padding.
    
    The motivation of this is to make it easier to calculate how much space a
    WAL record needs. Before this patch, it depended on how many page boundaries
    the record crosses. The motivation of that, in turn, is to separate the
    allocation of space in the WAL from the copying of the record data to the
    allocated space. Keeping the calculation of space required simple helps to
    keep the critical section of allocating the space from WAL short. But that's
    not included in this patch yet.
    
    Bump WAL version number again, as this is an incompatible change.
    20ba5ca6
xlog_internal.h 9.54 KB