Uploaded image for project: 'CloverDX'
  1. CloverDX
  2. CLO-18448

CloverJMX has unsuitable synchronization

    XMLWordPrintable

Details

    • Blue Sprint 102, Blue Sprint 103
    • 208215

    Description

      Our customer run into following synchronization issue.

      CloverJMX bean gets information about a job can be released - releaseJob() method. Following method is called to inform other listeners about this event:

      	private void sendReleaseWatchdogNotification(WatchDog watchDog) {
      		synchronized (jobListeners) {
      			for (JobListener jobListener : jobListeners) {
      				jobListener.jobFinished(watchDog);
      			}
      		}
      	}
      

      Unfortunatelly one of the listeners is stuck by a DB connection, which swallows a thread on close() method. From now on, all incomming events about job release are blocked on the jobListeners monitor. It is well visible at FastThread report of attached thread dump:

      Similar issue has been already noticed in an our internal test:
      https://wiki.cloverdx.com/display/DEVELOPMENT/2019-08-22+TES+-+Server+VTE+Stresstest%28s%29+before+release+5-3-1

      Attachments

        Issue Links

          Activity

            People

              zatopekm Martin Zatopek
              zatopekm Martin Zatopek
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: