Re: Nested transactions and tuple header info

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>, Manfred Koizar <mkoi-pg(at)aon(dot)at>, David Blasby <dblasby(at)refractions(dot)net>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Nested transactions and tuple header info
Date: 2004-06-02 14:53:47
Message-ID: 24342.1086188027@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> Tom Lane wrote:
>> I've been trying to think of ways to solve these problems by having a
>> main xact and all its subxacts share a common CID sequence (ie, a
>> subxact would have its own xid but would not start CID over at one).
>> If you assume that, then Bruce's idea may indeed work, since you would
>> never replace xmin in a way that would shift the interpretation of cmin
>> into a different CID sequence. But I suspect there is a simpler way to
>> solve it given that constraint.

> I thought about using a global command counter. The problem there is
> that there is no way to control the visibility of tuples by other
> transactions on commit except going back end fixing up tuples, which is
> unacceptable.

No, I said own xid --- so the "phantom xid" part is still there. But
your idea definitely does *not* work unless you use a single CID
sequence for the whole main xact; and I'm still wondering if there's
not a simpler implementation possible given that assumption.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Christopher Kings-Lynne 2004-06-02 14:54:36 Re: ACLs versus ALTER OWNER
Previous Message Tom Lane 2004-06-02 14:48:29 Re: Converting postgresql.conf parameters to kilobytes