At Tue, 25 Apr 2006 10:07:03 -0400,
"Jonathan S. Shapiro" <[EMAIL PROTECTED]> wrote:
> A caution about "send-exactly-once": there is no such thing. One of the
> things that we should try to preserve is the possibility of extending
> capabilities across a network. It is well known that (1)
> "send-exactly-once" cannot be implemented across a network, and (2) if a
> watchdog terminates a connection, there is a fundamental race: the
> server will not know that the session is gone until it tries to reply,
> which may be after it completes the operation. All of this is true
> because of network partitions.

Yeah, that's odd.  However, it is still send-exactly-once: It's just
that the message gets transformed in the process.  The remote server
sends a proper reply, but what actually would be delivered is the
local timeout message.  That's a bit like a chocolate santa claus in
an easter-bunny wrapping.
 
> *Because* we want to preserve this possibility, I think that this is
> also the correct baseline architecture for local failures. If we
> introduce a cancellation mechanism, we must understand that cancellation
> is best-effort, and not guaranteed.

Nasty stuff.  It's getting better and better: If you have a chain of N
invocations, and K points of failures, you are really screwed, because
then there are at least K points you have to "nudge" in some way to
get everything propagated.  And there is a good chance that such
things can happen in real practice because of systematic correlations
between failure modes.  Ouch!

Thanks,
Marcus



_______________________________________________
L4-hurd mailing list
L4-hurd@gnu.org
http://lists.gnu.org/mailman/listinfo/l4-hurd

Reply via email to