Re: WAL format and API changes (9.5)

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: WAL format and API changes (9.5)
Date: 2014-08-14 09:41:35
Message-ID: 53EC844F.4010807@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 08/14/2014 10:29 AM, Michael Paquier wrote:
> On Thu, Aug 14, 2014 at 3:04 AM, Alvaro Herrera
> <alvherre(at)2ndquadrant(dot)com> wrote:
>> Heikki Linnakangas wrote:
>> What's with XLogReplayLSN and XLogReplayRecord? IMO the xlog code has
>> more than enough global variables already, it'd be good to avoid two
>> more if possible. Is there no other good way to get this info down to
>> whatever it is that needs them?
> Yep, they do not look necessary. Looking at the patch, you could get
> rid of XLogReplayLSN and XLogReplayRecord by adding two extra argument
> to XLogReplayBuffer: one for the LSN of the current record, and a
> second for the record pointer. The code just saves those two variables
> in the redo loop of StartupXLOG to only reuse them in
> XLogReplayBufferExtended, and I saw no code paths in the redo routines
> where XLogReplayBuffer is called at places without the LSN position
> and the record pointer.
>
> However I think that Heikki introduced those two variables to make the
> move to the next patch easier.

The next patch doesn't necessary require them either, you could always
pass the LSN and record as an argument. I wanted to avoid that, because
every redo function would just pass the current record being replayed,
so it seems nicer to pass that information "out-of-band". I guess if we
do that, though, we should remove those arguments from rm_redo interface
altogether, and always rely on the global variables to get the "current"
record or its LSN. I'm not wedded on this, I could be persuaded to go
either way...

- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2014-08-14 09:42:52 Re: WAL format and API changes (9.5)
Previous Message Heikki Linnakangas 2014-08-14 09:29:56 Re: jsonb format is pessimal for toast compression