View Issue Details

IDProjectCategoryView StatusLast Update
000739110000-004: ServicesSpecpublic2023-03-28 15:12
ReporterMatthias Isele Assigned ToMatthias Damm  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version1.04 
Target Version1.05Fixed in Version1.05.03 RC1 
Summary0007391: Prioriy for keep-alive messages - clarification required
Description

5.13.1 Subscription Model
f) ... In the clauses that follow, the term NotificationMessage
refers to a response to a Publish request in which the notificationMessage parameter actually
contains one or more Notifications, as opposed to a keep-alive Message in which this parameter
contains no Notifications.

Following this wording a Keep-Alive Message is not a notification.

Looking at "Table 88 – CreateSubscription Service Parameters"

Priority: " When more than one Subscription needs to send Notifications, the Server should de-queue a Publish request to the Subscription with the highest priority number."

So my interpretation of the specification is that prioriy is not evaluated for keep-alive messages since that is not a notification.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0006842 acknowledged CTT UA Scripts Subscription Services/Subscription Minimum 02/003.js + 005.js + 006.js + 007.js + 008.js thrown "Error" 

Activities

Paul Hunkar

2021-12-17 21:56

developer   ~0015575

Last edited: 2021-12-18 06:00

The discussion was always that if not enough publishes are available to support the defined subscription - the lowest priority should starve and eventually time out - so a keep-a-live should not be sent (using one of the publishes). i.e. if I create 5 subscription but the first two have so many notifications that the channel is just busy - then the lowest priority subscription should timeout. This was the intent and the discussion when priority was discussed - the Highest priority should always be service - it should not miss - dequeue a publish for keep-a-live could cause a miss. Typically this is a client side issue - i.e. if the client has the bandwidth then it queue enough publishes to handle all subscriptions. If the client does not want a timeout then it does not specify a priority or specifies the same priority for all subscriptions. In general the wording related to priority needs to be cleaned up - the only exception for priority processing that is implied in the specification is if a response did not fit in a publish then that response can be continued (without checking if a higher priority queue needs to be processed). I'm not sure if that is desired behaviour, but that is what is in the specification as I read it.

Matthias Damm

2023-03-20 04:23

developer   ~0018899

Need to be discussed at F2F

Matthias Damm

2023-03-22 18:13

developer   ~0018976

Agreed in F2F that even KeepAlive will get higher priority

Matthias Damm

2023-03-28 14:57

developer   ~0019040

Table 88 – CreateSubscription Service Parameters

In
Priority: " When more than one Subscription needs to send Notifications, the Server should de-queue a Publish request to the Subscription with the highest priority number."

Replaced
'Notifications' with ''a Publish response"

This should make sure that the Subscription with the higest priority always is first in sending Publish responese, even for keep-alive

Jim Luth

2023-03-28 15:12

administrator   ~0019041

Agreed to changes in Web meeting.

Issue History

Date Modified Username Field Change
2021-11-08 20:08 Matthias Isele New Issue
2021-11-23 17:59 Jim Luth Assigned To => Matthias Damm
2021-11-23 17:59 Jim Luth Status new => assigned
2021-12-17 21:56 Paul Hunkar Note Added: 0015575
2021-12-18 05:51 Paul Hunkar Relationship added related to 0006842
2021-12-18 06:00 Paul Hunkar Note Edited: 0015575
2023-03-20 04:23 Matthias Damm Note Added: 0018899
2023-03-22 18:13 Matthias Damm Note Added: 0018976
2023-03-28 14:57 Matthias Damm Status assigned => resolved
2023-03-28 14:57 Matthias Damm Resolution open => fixed
2023-03-28 14:57 Matthias Damm Fixed in Version => 1.05.03 RC1
2023-03-28 14:57 Matthias Damm Note Added: 0019040
2023-03-28 15:12 Jim Luth Status resolved => closed
2023-03-28 15:12 Jim Luth Note Added: 0019041