Uploaded image for project: 'OASIS Message Queuing Telemetry Transport (MQTT) TC'
  1. OASIS Message Queuing Telemetry Transport (MQTT) TC
  2. MQTT-522

Clarification of the behaviour of properties for retained messages

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 5, CSD01
    • Fix Version/s: None
    • Component/s: edits
    • Labels:
      None
    • Proposal:
      Hide

      In 1,2 Terminorogy change:

      Application Message:
      The data carried by the MQTT protocol across the network for the application.
      When an Application Message is transported by MQTT it is associated with a
      Quality of Service (QoS), a collection of Properties, and a Topic Name.

      to

      Application Message:
      The data carried by the MQTT protocol across the network for the application.
      When an Application Message is transported by MQTT it contains payload data
      and is associated with a Quality of Service (QoS),
      a collection of Properties, and a Topic Name.

      In 3.3.1.3 Retain change

      If the RETAIN flag is set to 1 in a PUBLISH packet sent by a Client to a Server,
      the Server MUST replace any existing retained message for this topic and store
      the Application Message and its QoS [MQTT-3.3.1-5], so that it can be delivered to
      future subscribers whose subscriptions match its Topic Name.
      If the Payload contains zero bytes it is processed normally by
      the Server but any retained message with the same topic name MUST
      be removed and any future subscribers for the topic will not receive a
      retained message [MQTT-3.3.1-6]. A zero length retained message
      MUST NOT be stored as a retained message on the Server [MQTT-3.3.1-7].

      to

      If the RETAIN flag is set to 1 in a PUBLISH packet sent by a Client to a Server,
      the Server MUST replace any existing retained message for this topic and store
      the Application Message [MQTT-3.3.1-5],
      so that it can be delivered to future subscribers whose subscriptions match
      its Topic Name.
      If the Payload contains zero bytes it is processed normally by the Server
      but any retained message with the same topic name MUST be removed and any
      future subscribers for the topic will not receive a retained message [MQTT-3.3.1-6].
      A retained message with a
      Payload containing zero bytes MUST NOT be stored as a retained message
      on the Server [MQTT-3.3.1-7].

      Show
      In 1,2 Terminorogy change: Application Message: The data carried by the MQTT protocol across the network for the application. When an Application Message is transported by MQTT it is associated with a Quality of Service (QoS), a collection of Properties, and a Topic Name. to Application Message: The data carried by the MQTT protocol across the network for the application. When an Application Message is transported by MQTT it contains payload data and is associated with a Quality of Service (QoS), a collection of Properties, and a Topic Name. In 3.3.1.3 Retain change If the RETAIN flag is set to 1 in a PUBLISH packet sent by a Client to a Server, the Server MUST replace any existing retained message for this topic and store the Application Message and its QoS [MQTT-3.3.1-5] , so that it can be delivered to future subscribers whose subscriptions match its Topic Name. If the Payload contains zero bytes it is processed normally by the Server but any retained message with the same topic name MUST be removed and any future subscribers for the topic will not receive a retained message [MQTT-3.3.1-6] . A zero length retained message MUST NOT be stored as a retained message on the Server [MQTT-3.3.1-7] . to If the RETAIN flag is set to 1 in a PUBLISH packet sent by a Client to a Server, the Server MUST replace any existing retained message for this topic and store the Application Message [MQTT-3.3.1-5] , so that it can be delivered to future subscribers whose subscriptions match its Topic Name. If the Payload contains zero bytes it is processed normally by the Server but any retained message with the same topic name MUST be removed and any future subscribers for the topic will not receive a retained message [MQTT-3.3.1-6] . A retained message with a Payload containing zero bytes MUST NOT be stored as a retained message on the Server [MQTT-3.3.1-7] .

      Description

      The behaviour of properties on retained messages appears to be unspecified. It could be interpreted that properties are not stored nor propagated, but that seems unlikely to be desirable. In the event of propagation, the behaviour of some properties such as the publication expiry interval, should be clarified. I suggest that the "time of receipt" for a retained message should be the time of receipt of the subscribe request which triggers it.

        Attachments

          Activity

            People

            • Assignee:
              andrew_banks Andrew Banks (Inactive)
              Reporter:
              icraggs Ian Craggs (Inactive)
            • Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: