Re: WAL format changes

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

On Monday, June 18, 2012 08:08:14 PM Heikki Linnakangas wrote:
> 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.
I am out of my depth here, not having read any of the relevant code, but
couldn't we simply replace the lsn from disk with InvalidXLogRecPtr without
marking the page dirty?

There is the valid argument that you would loose some information when pages
with hint bits are written out again, but on the other hand you would also
gain the information that it was a hint-bit write...

Greetings,

Andres
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

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