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


Help: OASIS Mailing Lists Help | MarkMail Help

wsrm message

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

Subject: Re: [wsrm] Proposed resolution for Rel 50

 Hi Jacques,

 See some more comments.

Jacques Durand wrote:

Sunil:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


My next action will be to revise Rel52, 57 based on this.

Some more inline comments, though.

-----Original Message-----
From: Sunil Kunisetty [mailto:sunil.kunisetty@oracle.com]
Sent: Thursday, November 13, 2003 9:06 AM
To: Jacques Durand
Cc: Iwasa; wsrm@lists.oasis-open.org
Subject: Re: [wsrm] Proposed resolution for Rel 50


 Hi Jacques,

Jacques Durand wrote:


I have been thinking about the two proposed semantics for ExpiryTime, and I do not see them as different as I thought initially.

That was my point all along.
- Either assume that it was application's responsibility and leave all the times altogether
  [I disagree with this, but stating it]
- If we are doing Expiry checks, might as well do it when the realm of RMP ends, i.e.,
  when RMP makes the message available to the user. I hardly see any gain in doing any
  checks at the time of receiving.
[Jacques Durand] from our implementation perspective (Fujitsu), we certainly see a significant benefit in checking ExpiryTime at reception time,  as we don't want to process further and do duplicate checks on messages that we know up-front will never make it to the app. (So two checks will be in order for us.)

It will be definitely simpler, but to me it's a broken semantics... I don't think one
additional check is a burden.

But there is more to fix even if we keep previous semantics: the "processing model" we had outlined in last f-2-f Wednesday minutes, 6.2 Rel50) does not hold anymore, w/r to Acks: If you don't require an up-front expiration check, that means you will Ack positively an expired message, then later send an Error for non-delivery to app due to expiration. 


Why do we need to do that? We can use the same processing logic on the Sender side too

and identify such expired messages. I think we need to define the Processing Model for Sender.

I must admit yours is also the original one as currently worded in the spec.Although I

Yes. I'm not proposing anything new. Just want the current semantics to stand.

believe the current semantics adds unnecessary checks and cases, and pretends to an "application

Only thing would be one additional "timestamp" stamp. This is a drop in the ocean especially we
will have to do many other checks for DE and trying to compute the max(ExpiryTimes) "if"
neither of the other parameters are available.
As per the rules on the Sender, the same rules apply irrespective of it. For ex., we cannot
assume even otherwise that Ack means that the Receiver will always make the Msg. available
to the User. Because, after sending an Ack. for an out-of-order Msg., the Group may have
terminated/removed before it was every made available. So the Sender still has to obey the
rules I mentioned in one of my previous rules. Essentially, the rules on the Receiver for
the group termination/removal applies to the Sender also. So I don't see any additional
complexities on the rules by saying that ExpiryTime semantics are the current TTL semantics.

[Jacques Durand] If we keep it as is, one more rule now for not delivering an Acked message, is that if it expires. Agree group termination does not seem to be affected much one way or the other.

(This was the point I was making at the F2F.. which no one seems to caring :))


semantics" flavor that is no substitute tobusiness-level timeout handling in the application in my view, I can settle with this.

The inconsistencies you still see in my proposal (your scenario case), however, I contend only occur if you authorize the Sender to bump-up ExpiryTime whenresending a message, which I still strongly oppose (and the current spec is on myside on this, see 3.1.4 in V0.7). Indeed, I believe this ExpiryTime update does not have any semantic ground, and introduces all sorts of complications, from dup elimination to group expiration management.

I believe I can clarify the semantics very clearly without any confusion. However as I said in my
previous mail, this is not a big deal for us and we can still certainly live with the fact that ExpiryTimes
cannot change.

[Jacques Durand] Id prefer to keep ExpiryTime immutable, once it is set (so all in all, we keep as much of the current spec as we can :)

Ok...No problem.


I thought of another discrepancy with this model, but I don't seem to recollect right now.

The ExpiryTime as defined currently seems to now reflect an app to app contract, and has no reason to see its value upgraded for a given message, I believe, due to underlying transport/RMP mishaps.

Would you agree with this analysis?

Yes, but that will have a bearing on RMP implementation for persistence and DE.

[Jacques Durand] And I think this bearing is positive, but let us postpone this debate :)

Sure. Indeed it is a positive one.



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