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

                 Key: UIMA-1800
                 URL: https://issues.apache.org/jira/browse/UIMA-1800
             Project: UIMA
          Issue Type: Bug
          Components: Async Scaleout
    Affects Versions: 2.3AS
            Reporter: Jerry Cwiklik
            Assignee: Jerry Cwiklik


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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to