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

Deadlock inside RTC's DataManager during shutdown

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 1.11.3
    • Fix Version/s: 16.0.0
    • Security Level: Default (Default Security Scheme)
    • Labels:
      None

      Description

      While running 'service opennms shutdown', my system completely hung and was unable to restart. The web UI was inaccessible. I was able to trigger a thread dump with kill -3 and it looks like the deadlock is caused by RTC. One RTC DataManager thread is POSTing an RTC update to the web UI and appears to have hung, probably because the web UI was destroyed during shutdown.

      The Rtcd.stop() method itself synchronizes on the DataManager class so it is unable to complete.

      We should avoid this problem by removing the synchronization around the RTC POST inside DataManager. That way, the slow and I/O dependent POST operation will not interfere with methods that really should be synchronized (like startup and shutdown).

      Or we could just delete RTC.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                seth Seth Leger
                Reporter:
                seth Seth Leger
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: