[Spread-users] Ordering of memb messages wrt. regular messages ordered causally..

Jonathan Stanton jonathan at cnds.jhu.edu
Mon Mar 22 00:38:08 EST 2004

If by "membership change occurs immediately after sending the message" you 
mean the client program instance 'A' receives (with SP_recv) a 
reg-membership messages just after (in real world time) the client program 
'A' called SP_multicast with a causal message, then neither of the cases 
you describe is exactly correct. 

The data message will not arrive before the reg-membership messages
because the regular membership was already generated and sent to all of
the clients who should receive it before the new data message client A
just sent. However, the ordering of the data message in relation to the
membership message is guaranteed to be the same on all clients of the

A few key facts that may make the Spread semantics make sense. 

*) Causal messages are treated as AGREED, meaning all clients will see 
them in the same order

*) The guarantees about ordering of messages only apply to the 'delivery' 
of messages (both data and membership) to clients, not to when the client 
program 'sends' a messages. 

All members of the group at the time the message is delivered will receive
the message. So if clients A, B, and C were listed in the membership of
the most recent membership messages received, then client programs A, B
and C will receive the data message (or crash -- the daemon cannot prevent

The detailed semantics can be found in John Schultz and Jonathan Stanton's 
Thesis that are on the Spread web site.


On Mon, Mar 22, 2004 at 02:22:33AM +0000, John Gilbert wrote:
> I.ve got a very basic question about the ordering of reg-memb messages
> with respect to regular messages. 
> If using a causal order when multicasting to a group, and a membership
> change occurs immediately after sending the message, will it arrive at
> all members of the group before they receive the reg-memb message, or
> will the ordering of the regular message and reg-memb message differ on
> different receiving hosts?
> Thanks,
> John Gilbert.
> _______________________________________________
> Spread-users mailing list
> Spread-users at lists.spread.org
> http://lists.spread.org/mailman/listinfo/spread-users

Jonathan R. Stanton         jonathan at cs.jhu.edu
Dept. of Computer Science   
Johns Hopkins University    

More information about the Spread-users mailing list