Uploaded image for project: 'OpenNMS'
  1. OpenNMS
  2. NMS-9371

Minions generate storm of heartbeats after being disconnected from ActiveMQ for a long period of time

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 19.0.0, 19.0.1, 19.1.0
    • Fix Version/s: 20.0.1
    • Component/s: Minion
    • Security Level: Default (Default Security Scheme)
    • Labels:
      None
    • Sprint:
      Horizon - May 24th

      Description

      The heartbeat produce on the Minion side currently schedules the heartbeats using java.util.Timer#scheduleAtFixedRate. If ActiveMQ is unreachable, or sending to ActiveMQ otherwise blocks, then this method will play catch-up when connectivity is re-established, which results in many messages being sent in succession. This can be a large number of messages if the Minion has been disconnected for a while.

      Since "older" messages can be ignored, we should simply use java.util.Timer#schedule instead.

      Also, the heartbeat do not currently include a timestamp, so it is possible for the OpenNMS instance to consume "stale" heartbeats from the broker.

        Attachments

          Activity

            People

            • Assignee:
              j-white Jesse White
              Reporter:
              j-white Jesse White
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: