Re: Merge compact/non compact commits, make aborts dynamically sized - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: Merge compact/non compact commits, make aborts dynamically sized
Date
Msg-id 54F49CAC.5000402@iki.fi
Whole thread Raw
In response to Re: Merge compact/non compact commits, make aborts dynamically sized  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: Merge compact/non compact commits, make aborts dynamically sized  (Andres Freund <andres@2ndquadrant.com>)
List pgsql-hackers
On 03/02/2015 07:14 PM, Andres Freund wrote:
> On 2015-03-02 19:11:15 +0200, Heikki Linnakangas wrote:
>> Come to think of it, it would be cleaner anyway to move the
>> XLogBeginInsert() and XLogInsert() calls inside XactEmitCommitRecord. Then
>> those structs don't need to be static either.
>
> That was my first thought as well - but it doesn't easily work because
> of the way commit/abort records are embedded into twophase.c.  I
> couldn't come with a simple way to change that, and anythign non simple
> imo defeats the purpose.

Pass the prepared XID as yet another argument to XactEmitCommitRecord, 
and have XactEmitCommitRecord emit the xl_xact_commit_prepared part of 
the record too. It might even make sense to handle the prepared XID like 
all the other optional fields and add an xinfo flag for it.

- Heikki



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: deparsing utility commands
Next
From: Tom Lane
Date:
Subject: Re: Additional role attributes && superuser review