UIMA
  1. UIMA
  2. UIMA-1800

UIMA AS should block msg submitter thread if a thread pool is empty

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.3AS
    • Fix Version/s: 2.3.1AS
    • Component/s: Async Scaleout
    • Labels:
      None

      Description

      If a queue scaleout factor > 1, the UIMA AS creates a thread pool and a managing Executor object. The threads in a pool are used to process incoming messages. A submitter thread receives a jms message via a callback from Spring and delivers it to the Executor for processing in one of the threads from the pool. If a thread pool is empty, the Executor policy is to use the submitter thread to process the message. Since there is a single submitter thread (per queue) this policy slows down the submitter thread and prevents it from delivering messages for processing by other threads.

      Change the code to prevent the submitter thread from doing processing. Instead, block the submitter thread if the thread pool becomes empty. As soon as a thread becomes available, the submitter thread should deliver a message and wait for a callback from Spring.

        Activity

        Jerry Cwiklik created issue -
        Jerry Cwiklik made changes -
        Field Original Value New Value
        Status Open [ 1 ] Closed [ 6 ]
        Resolution Fixed [ 1 ]
        Jerry Cwiklik made changes -
        Resolution Fixed [ 1 ]
        Status Closed [ 6 ] Reopened [ 4 ]
        Jerry Cwiklik made changes -
        Status Reopened [ 4 ] Closed [ 6 ]
        Resolution Fixed [ 1 ]
        Marshall Schor made changes -
        Fix Version/s 2.3.1AS [ 12315335 ]

          People

          • Assignee:
            Jerry Cwiklik
            Reporter:
            Jerry Cwiklik
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development