← Prev in month ← Prev in thread
Next in thread → Next in month →

time issues

From
Kacques Eurand
Date
2003-11-04T09:40:56+00:00
ID
Thread
time issues
Title: time issues

Tom:

Most of this looks fine to me.

 see comments inline for where I differ.

 

My refined proposal for Group Termination Conditions:

·        For all incoming messages in a group, the receiver checks the 

expiry time of incoming messages, and if not expired, uses the value to 

update a running statistic for the MaxExpiryTimeOfMessagesReceivedInGroup

·        The reliable message MAY contain an optional attributes, 

GroupExpiryTime of GroupId.  Presence of GroupExpiryTime indicates a 

fixed duration group.   All messages in group MUST have expiryTime less 

or equal to GroupExpiryTime

·        The reliable message MAY contain an optional attribute 

GroupMaxIdleDuration, of GroupId. Presence of GroupMaxIdleDuration 

indicates another condition to terminate group. If the receiver detects 

that no message for that group has been received for an interval of time 

equal to the GroupMaxIdleDuration, the group will be terminated

·        Neither of the two optional attributes of GroupId are allowed 

to be present in singleton groups

·        If neither GroupExpiryTime nor GroupMaxIdleDuration is present 

as attributes of GroupId, then the expiryTime of the highest sequenceNo 

sent for that group must be greater or equal to the expiryTime of all 

previous messages in the group.  For such a group, the receiver RMP 

MUST  use the MaxExpiryTimeOfMessagesReceivedInGroup as the 

effectiveGroupExpiryTime for that group.

<JD> I think this is too complex a condition - plus, infinite groups are OK !

(see my draft)

·        The presence and values of both attributes of GroupId must be 

identical for every message sent in the group.

·        If both timing attributes are present, the first criteria that 

fires terminates the group.

·        Presence of status=end always takes precedence to signal 

termination of a group.

<JD> OK, but this works only is the case when all previous messages were received.

(see proposal for detail)

·        When a group is terminated for any of the four reasons 

(status=end, reach GroupExpiryTime, GroupMaxIdleDuration passes without 

a received message, reach effectiveGroupExpiryTime) , all messages and 

group state information are held until the GroupExpiryTime if it is 

present, or until the MaxExpiryTimeOfMessagesReceivedInGroup if the 

GroupExpiryTime is not present.

 <JD> messages are not held, unless out-of-order.

The above rule concerns the "group state" , i.e. its message IDs past record,

for the sake of dup check. (see proposal for detail)

Processing order constraints must be clarified, if we can agree to the 

above.

 <JD> I have sent a "state diagram", that mimmics teh processing algo.

Does it address this?
← Prev in month ← Prev in thread
Next in thread → Next in month →