From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
Cc: | Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: XLog: how to log? |
Date: | 2004-05-11 03:05:13 |
Message-ID: | 24517.1084244713@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)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?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Shachar Shemesh | 2004-05-11 05:58:00 | Re: tinyint |
Previous Message | Christopher Browne | 2004-05-11 01:13:06 | Re: Hacking MySQL Database |