Uploaded image for project: 'InsightEdge Platform'
  1. GS-12793

Consumer threads are never released by SimplePollingEventListenerContainer

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Medium
    • Resolution: Fixed
    • Affects versions: None
    • Fix versions: 12.0.1
    • Labels:
      None
    • Platform:
      Java
    • SalesForce Case ID:
      10369
    • Acceptance Test:
      NA
    • Sprint:
    • Product:
      XAP
    • Edition:
      Open Source

      Description

      Customer comment:Debugging SimplePollingEventListenerContainer for GigaSpace 10.2.1, I believe there is a bug in the method SimplePollingEventListenerContainer.AsyncEventListenerInvoker.run(). The main processing loop looks like this:

      while (isActive()) {
      waitWhileNotRunning();
      if (isActive()) {
      eventReceived = invokeListener();
      }
      }

      Some lines below a thread would be stopped if the variable eventReceived is false, so it seems as if, if no events are found, unnecessary consumer threads will be stopped. but the problem is that the method isActive() always returns true: So the main loop runs as long as the container is alive, and there is no chance to shut down unnecessary consumer threads.
      As a result of this bug, allocated threads forever remain alive. They unnecessary execute many queries against the space. Please analyze this issue and fix it.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: