Re: log_newpage header comment - Mailing list pgsql-hackers

From Robert Haas
Subject Re: log_newpage header comment
Date
Msg-id CA+TgmoZzT4RBwGWuoUrchECRGRFH=+4XTSevdfb=nAGGVW3njA@mail.gmail.com
Whole thread Raw
In response to Re: log_newpage header comment  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: log_newpage header comment  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Fri, Jun 8, 2012 at 1:20 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Fri, Jun 8, 2012 at 9:56 AM, Robert Haas <robertmhaas@gmail.com> wrote:
>> OK.  So what I'm thinking is that we should add a new function that
>> takes a relfilenode and a buffer and steps 4-6 of what's described in
>> transam/README: mark the buffer dirty, xlog it, and set the LSN and
>> TLI.  We might want to have this function assert that it is in a
>> critical section, for the avoidance of error.  Then anyone who wants
>> to use it can do steps 1-3, call the function, and then finish up with
>> steps 6-7.  I don't think we can cleanly encapsulate any more than
>> that.
>
> On further review, I think that we ought to make MarkBufferDirty() the
> caller's job, because sometimes we may need to xlog only if
> XLogIsNeeded(), but the buffer's got to get marked dirty either way.
> So I think the new function should just do step 5 - emit XLOG and set
> LSN/TLI.
>
> Proposed patch attached.

Whee, testing is fun.  Second try.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment

pgsql-hackers by date:

Previous
From: "Kevin Grittner"
Date:
Subject: Re: Temporary tables under hot standby
Next
From: Christopher Browne
Date:
Subject: Re: New Postgres committer: Kevin Grittner