OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ws-rx message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [ws-rx] New PR Issue: RMD cannot detect some incomplete Sequences


This is the right approach.
LastMessage was removed because not adding anymore value, after
introducing CloseSequence.
Notes: 
- in the context of PR issue 7, we can imagine scenarios where a request
calls for an undetermined number of async response messages. In that
case, the RMD is the one closing the inbound seq, but does not know if
it has received all for the sequence. The HighestMessageNumber should
also be inserted in TerminateSequenceResponse message, if TS/TSR
proposal accepted for PR 7.
- name " HighestMessageNumber" should not be confused with max sequence
number. Propose to use "HighestSentNumber".


Jacques

-----Original Message-----
From: Paul Fremantle [mailto:paul@wso2.com] 
Sent: Saturday, October 21, 2006 1:02 AM
To: Gilbert Pilz
Cc: ws-rx@lists.oasis-open.org
Subject: Re: [ws-rx] New PR Issue: RMD cannot detect some incomplete
Sequences

Gil

In your example, if we add the LastMessage marker back, the RMD will 
know that there is an incomplete sequence. But it won't know how many 
messages are missing. It could be 9 and 10, or it could be a million 
messages, because the LastMessage didn't get through.

So instead, I would suggest we add a HighestMessageNumber to the 
CloseSequence and TerminateSequence requests. That way the RMD has exact

knowledge of which messages are missing.

Paul

Gilbert Pilz wrote:
>
> *Title*: RMD cannot detect some incomplete Sequences
>
> *Description*:
>
>       WS-RM 1.0 [1] defined a sub-element of the wsrm:Sequence header
>       that served to mark the containing message as the last message
>       in a Sequence. WS-RM 1.1 [2] has removed this element.
>       Consequently the RMD has no guaranteed way of determining
>       whether it has received all the messages in a Sequence. This
>       presents obvious drawbacks to an Application Destination that
>       may wish to know if it has received all the data that the
>       Application Source sent it. In addition to this it makes
>       correctly implementing the "incomplete sequence behavior"
>       semantics impossible since the RMD cannot always determine what
>       is and isn't an "incomplete Sequence".
>
>       For example, suppose an RMS creates a Sequence, sends messages
>       1-10, then sends a CloseSequence. Suppose that messages 9 and 10
>       get lost but the CloseSequence message is received by the RMD.
>       The RMS can determine that the Sequence is incomplete (final ack
>       is missing 9 and 10 from the range), but the RMD has no way of
>       knowing, nor is there any way for it to discover, that the
>       Sequence is incomplete. If the IncompleteSequenceBehavior was
>       "DiscardEntireSequence" then the RMS will conclude that all of
>       the messages will be discarded whereas the RMD will, in all
>       likelihood, deliver all of the messages to the Application
>       Destination under the assumption that the Sequence is complete.
>
> *Proposal*:
>
>       Put the LastMessage element back in the Sequence element. Add
>       additional wording around the definition of
>       IncompleteSequenceBehavior stating that a Sequence without a
>       message that was marked "last" is defined as incomplete.
>
> *References*:
>
>       [1]
>
_http://specs.xmlsoap.org/ws/2005/02/rm/ws-reliablemessaging.pdf_
>       [2]
>
_http://docs.oasis-open.org/ws-rx/wsrm/200608/wsrm-1.1-spec-cd-04.pdf_
>
>

-- 
Paul Fremantle
VP/Technology and Partnerships, WSO2 
OASIS WS-RX TC Co-chair

http://bloglines.com/blog/paulfremantle
paul@wso2.com
(646) 290 8050

"Oxygenating the Web Service Platform", www.wso2.com




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]