Uploaded image for project: 'Configuration Persistence Service'
  1. Configuration Persistence Service
  2. CPS-1599

Create Timeout for Partial Outcome Response

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Medium Medium
    • Montreal Release
    • None
    • NCMP

      Implementation proposal of DMI Response Timeout

      Given that a Subscription Create Event has been received by the NCMP and that NCMP is going to forward that subscription to multiple DMI Plugins.

      1. The NCMP will create a new thread which will wait 30 seconds.
      2. The NCMP will add an entry to a hazelcast Map<String,Set<String>> with the clientID and subscriptionName combined as a key and the DMI Plugin names which the subscription has been forwarded to
      3. Every time a DMI responds to NCMP, NCMP persists the response. The Map entry is for the subscription is then checked
        1. if the subscription entry still exists in the Map, the NCMP removes the DMI Plugin name from the Set of the relevant Map entry.
          1. if the Set is now empty, NCMP removes the Map entry and compiles & send a full outcome response
        2. if the subscription entry does not exists in the Map, the NCMP compiles & sends a partial outcome response
      4. If the Wait thread completes the 30s countdown,
        1. if the map entry for the subscription exists in the map the thread removes the map entry from the Map. It then sends a partial outcome response
        2. if the map entry for the subscription does not exist in the map, the thread does nothing

      A/C:

      Configurable cut off time

      Check with multiple instances

      Demo

            lukegleeson lukegleeson
            lukegleeson lukegleeson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: