Re: WAL format changes

From: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: WAL format changes
Date: 2012-06-18 18:08:14
Message-ID: 4FDF6E8E.4080900@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 18.06.2012 21:00, Robert Haas wrote:
> On Thu, Jun 14, 2012 at 5:58 PM, Andres Freund<andres(at)2ndquadrant(dot)com> wrote:
>>> 1. Use a 64-bit segment number, instead of the log/seg combination. And
>>> don't waste the last segment on each logical 4 GB log file. The concept
>>> of a "logical log file" is now completely gone. XLogRecPtr is unchanged,
>>> but it should now be understood as a plain 64-bit value, just split into
>>> two 32-bit integers for historical reasons. On disk, this means that
>>> there will be log files ending in FF, those were skipped before.
>> Whats the reason for keeping that awkward split now? There aren't that many
>> users of xlogid/xcrecoff and many of those would be better served by using
>> helper macros.
>
> I wondered that, too. There may be a good reason for keeping it split
> up that way, but we at least oughta think about it a bit.

The page header contains an XLogRecPtr (LSN), so if we change it we'll
have to deal with pg_upgrade. I guess we could still keep XLogRecPtr
around as the on-disk representation, and convert between the 64-bit
integer and XLogRecPtr in PageGetLSN/PageSetLSN. I can try that out -
many xlog calculations would admittedly be simpler if it was an uint64.

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2012-06-18 18:11:54 Re: [PATCH] Lazy hashaggregate when no aggregation is needed
Previous Message Robert Haas 2012-06-18 18:00:11 Re: WAL format changes