Re: Two-phase commit - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Two-phase commit
Date
Msg-id 1299.1097104057@sss.pgh.pa.us
Whole thread Raw
In response to Re: Two-phase commit  (Oliver Jowett <oliver@opencloud.com>)
Responses Re: Two-phase commit
List pgsql-hackers
Oliver Jowett <oliver@opencloud.com> writes:
> Tom Lane wrote:
>> Well, the question is how long must the individual databases retain
>> state with which to answer "recover" requests.

> As I understand it, you don't need to keep state for committed txns, 

I think that's clearly wrong:
TM --> DB:    COMMIT PREPARED foo
        DB does it and forgets gid foo
TM crashes and restarts
TM --> DB:    what's the state of foo?
DB --> TM:    go away, never heard of it

I suppose you could code the TM to treat this as meaning "it was
committed" but I think the folly of that is obvious.


> Probably the next question is, do we want a database-side timeout on how 
> long prepared txns can stay alive before being summarily rolled back?

Yeah, there's another set of issues there.  Personally I always thought
that 2PC was a fundamentally broken concept, because it's got so many
squirrelly cases where the guarantees you thought you were buying with
all this overhead vanish into thin air.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Rod Taylor
Date:
Subject: Re: Two-phase commit
Next
From: Alvaro Herrera
Date:
Subject: Re: Two-phase commit