ws-rx message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: RE: [ws-rx] PR035, PR009, PR020: DA defs
- From: Christopher B Ferris <chrisfer@us.ibm.com>
- To: Stefan Batres <stefanba@microsoft.com>
- Date: Thu, 25 Jan 2007 13:53:08 -0500
I think I am +1'ing Stefan's comments.
The problem, frankly, is with the definition
and use of "deliver" in the context of these definitons:
Deliver:
The act of transferring a message from the RM Destination to the Application
Destination.
If I have an RMD and AD that are using
transactions to exchange messages, then there may in fact be
many "deliveries" of the message
frm the RMD to the AD until one of them finally commits.
Possibly, if we changed the definition
of "deliver" to be:
Deliver:
The act of transferring responsibility for a message from the RM Destination
to the Application Destination.
Then these definitions would not be
as problematic.
the reason that I tried to avoid the
use of the word deliver in my definition of delivery assurance was to
avoid this very problem.
Cheers,
Christopher Ferris
STSM, Software Group Standards Strategy
email: chrisfer@us.ibm.com
blog: http://www.ibm.com/developerworks/blogs/page/chrisferris
phone: +1 508 377 9295
Stefan Batres <stefanba@microsoft.com> wrote
on 01/25/2007 12:45:51 PM:
> Matt,
>
> Thanks for putting this together. I've inlined a couple of comments.
>
> --Stefan
>
>
> -----Original Message-----
> From: Matthew Lovett [mailto:MLOVETT@uk.ibm.com]
> Sent: Thursday, January 25, 2007 5:36 AM
> To: ws-rx@lists.oasis-open.org
> Cc: Durand, Jacques R.
> Subject: Re: [ws-rx] PR035, PR009, PR020: DA defs
>
> Hi all,
>
> Following on from the discussion about using "deliver" rather
than
> "process to conclusion", here are some definitions that
Peter and I have
> worked on. We believe these definitions help define the end-to-end
DA, as
> they include the RMS behaviour.
>
> --
>
> wsrmp:DeliveryAssurance
>
> When applied to an RM Destination, this element defines a policy assertion
> that identifies a requirement on RM Sources. Any RM Source that transmits
> messages to this RM Destination SHOULD conform to the requirement
> expressed by this assertion. Conversely, when it is applied to an
RM
> Source this assertion identifies a requirement on RM Destinations.
Any RM
> Destination that receives messages from this RM Source SHOULD conform
to
> the requirement expressed by this assertion.
>
> wsrmp:AtLeastOnce
>
> Each message is to be delivered at least once. The requirement on
an RM
> Source is that it SHOULD retry transmission of every message sent
by the
> Application Source until it receives an acknowledgement from the RM
> Destination. The requirement on the RM Destination is that it SHOULD
retry
> delivery to the Application Destination of every message that it accepts
> from the RM Source. There is no requirement for the RM Destination
to
> apply duplicate message filtering.
>
> [SB] I think there should be a requirement to indicate an error if
> the assurance
> can't be met.
>
> wsrmp:AtMostOnce
>
> Each message is to be delivered at most once. The RM Source MAY retry
> transmission of unacknowledged messages, but is NOT REQUIRED to do
so. The
> requirement on the RM Destination is that it MUST filter out duplicate
> messages, i.e. that it MUST NOT redeliver any message.
>
> [SB] I find "that is MUST NOT redeliver any message" confusing.
The
> requirement
> is to filter out duplicates that arrive on the wire. But we can't
> forbid redelivery
> of a message that arrived only once or for which duplicates have
> been eliminated.
> e.g. RMD delivers message to AD in the context of a local atomic
> transaction that
> gets rolled back, this text seems to say that the message should not
> be redelivered.
>
> wsrmp:ExactlyOnce
>
> Each message is to be delivered exactly once. The requirement on an
RM
> Source is that it SHOULD retry transmission of every message sent
by the
> Application Source until it receives an acknowledgement from the RM
> Destination. The requirement on the RM Destination is that it MUST
filter
> out duplicate messages, i.e. that it MUST NOT redeliver any message.
>
> [SB] Same comments apply.
> --
>
> Some additional comments:
>
> Doug pointed out that we talk about the RMS and RMD here, but that
the
> wsrmp spec doesn't quite call out where the RMS and RMD are. For example,
> if a WSDL output message is decorated with the RM assertion + a DA,
we
> would expect the server-side RMS to exist and do it's part, and similarly
> the client side RMD has a role to play. I think that this is a separate
> issue, and needs a bit of discussion, but the text for the DAs should
be
> ok however we resolve that.
>
> Jacques: I hoped to get this out to you earlier so you could see our
> thought process, but I'm running out of time before the call. I'm
sorry
> that time got away from me!
>
> Thanks
>
> Matt
>
>
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]