On Fri, Jun 8, 2012 at 1:20 PM, Robert Haas <robertmh...@gmail.com> wrote: > On Fri, Jun 8, 2012 at 9:56 AM, Robert Haas <robertmh...@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
log-newpage-buffer-v2.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers