[Spread-users] Understanding SAFE messages

Dave Viner dviner at yahoo-inc.com
Thu Apr 3 14:02:33 EST 2003

	I'm having some difficulty understanding SAFE messages and how they differ
from RELIABLE messages.  Let's assume that I have 2 spread daemons on
different machines (so, 2 ips listed in a single Spread_Segment), and each
daemon has 2 client programs (or subscribers, or recipients) all of whom are
in the same "group".  So the picture looks something like:

Prog1 --                   -- Prog3
        |- SpD1 --- SpD2 -|
Prog2 --                   -- Prog4

Then Prog1 sends message (M1) to SpD1.  Then SpD2 dies for some reason.  My
understanding of SAFE versus RELIABLE is that if the M1 message is SAFE,
then SpD1 will broadcast a transitional membership (TRANSITION_MESS) to
Prog1 and Prog2, and then send M1 message to Prog2.  On the other hand, if
the M1 message is RELIABLE, SpD1 will simply broadcast the M1 message to
Prog2.  Is that accurate?  If so, that implies that Prog3 and Prog4 would
never see the M1 message, even if it were SAFE, and SpD2 had, say, some sort
of hardware hiccup (possibly non-fatal, short-lived).  Are there any
facilities which allow the system to keep track of what SAFE messages SpD2
missed while it was away?



More information about the Spread-users mailing list