Re: Big 7.4 items - Mailing list pgsql-hackers

From
Subject Re: Big 7.4 items
Date
Msg-id 20021213213334.USFN25316.lakecmmtao01.coxmail.com@lakecmmtab01
Whole thread Raw
In response to Big 7.4 items  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Big 7.4 items
List pgsql-hackers
>  
> 
> Darren, can you clarify this?  Why does it send that message?  How does
> it allow commits not to wait for ordered writesets?
> 

There are two channels.  One for total order writesets 
(changes to the DB).  The other is simple order for
aborts, commits, joins (systems joining the replica), etc.
The simple channel is necessary, because we don't want to
wait for total ordered changes to get an abort message and
so forth.  In some cases you might get an abort or a commit
message before you get the writeset it refers to.

Lets say we have systems A, B and C.  Each one has some
changes and sends a writeset to the group communication
system (GSC).  The total order dictates WS(A), WS(B), and
WS(C) and the writes sets are recieved in that order at
each system.  Now C gets WS(A) no conflict, gets WS(B) no
conflict, and receives WS(C).  Now C can commit WS(C) even 
before the commit messages C(A) or C(B), because there is no
conflict.  

Hope that helps,

Darren



pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Big 7.4 items
Next
From: Jan Wieck
Date:
Subject: Re: Big 7.4 items