Re: XLog: how to log? - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: XLog: how to log?
Date
Msg-id 1084257893.3028.1054.camel@stromboli
Whole thread Raw
In response to Re: XLog: how to log?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: XLog: how to log?  (Alvaro Herrera <alvherre@dcc.uchile.cl>)
List pgsql-hackers
On Tue, 2004-05-11 at 04:05, Tom Lane wrote:
> Alvaro Herrera <alvherre@dcc.uchile.cl> writes:
> > A simple idea would be to add the committed subxact Xids to the
> > xl_xact_commit and xl_xact_abort structs.  However, this will be a
> > variable length array, and those structs already have variable length
> > arrays at the end (filenodes to drop).  I don't see how would I overlay
> > that into a C struct.
> 
> Just means you have to do some address arithmetic instead of being able
> to reference the additional data as a struct member.  Tedious but hardly
> difficult.  See for instance the handling of "move" data in
> XLOG_HEAP_MOVE records, or "unused" data in XLOG_HEAP_CLEAN.
> 
> I'd not recommend emitting additional xlog records unless there's a
> genuine log-semantics-related reason for doing so.  (Thinks about it...)
> It seems like you'd want to emit a subtrans abort record to carry
> information about file deletions, but there's no real need to emit
> subtrans commit records, is there?
> 

Should we write a subtrans commit record when WAL_DEBUG is set? We could
remove it completely in the future when the interaction between PITR
recovery and subtransactions have been fully covered off.

My thinking is that subtransactions themselves are not valid recovery
targets. As long as we can tell the top level commits from the
subtransactions then it should be easy to recover. My thinking is that
if a subtransaction id is wrongly quoted as a recover point, then this
would be treated as a "rollforward to txnid X, but do not include this
one". Does that make sense? Does everything we have support that?

Best Regards, Simon Riggs



pgsql-hackers by date:

Previous
From: Shachar Shemesh
Date:
Subject: Re: tinyint
Next
From: Hannu Krosing
Date:
Subject: Re: Adding MERGE to the TODO list (resend with subject)