• Type: Improvement
    • Resolution: Fixed
    • Priority: Major
    • 3.1.1
    • Affects Version/s: None
    • Component/s: core
    • None
    • Hide

      I suggest we define the term "store" as follows.

      The client and server implement data storage independently and the duration for which data persists can be different in each. The client and server MUST store data for at least as long as the client server connection lasts. Quality of service guarantees are only valid so long as both client and server store data. Durable subscriptions and retained publications are only good for the length of time that the server stores them.

      Make a global change to replace "persist" with "store".

      Show
      I suggest we define the term "store" as follows. The client and server implement data storage independently and the duration for which data persists can be different in each. The client and server MUST store data for at least as long as the client server connection lasts. Quality of service guarantees are only valid so long as both client and server store data. Durable subscriptions and retained publications are only good for the length of time that the server stores them. Make a global change to replace "persist" with "store".
    • Hide

      Added lines 541 on in draf07 as proposal..

      Show
      Added lines 541 on in draf07 as proposal..

      The MQTT Specification talks about storing state for example in terms of durable subscriptions, retained [publications and partially completed message transfers for Qos 1 and Qos 2.

      In practice server implementations interpret storing state in a number of ways ranging from a forced write to a disk to keeping the data in volatile memory which
      is cleared if the server is restarted. This is also the case for the client implementation, though most of these seem to actually force the data to disk.

      The consequence of not storing data by forcing it to disk in the server are:
      Loss of retained publications, loss of durable subscriptions, loss of Qos =1 publications, loss or duplication of Qos=2 publications
      In the client this would also result in loss or duplication of messages.

      The client and server are only able to detect indirectly that the other has lost data, for example by failing to receive a retained publication.

            Assignee:
            Andrew Banks (Inactive)
            Reporter:
            Andrew Banks (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: