uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jerry Cwiklik (JIRA)" <...@uima.apache.org>
Subject [jira] Issue Comment Edited: (UIMA-1800) UIMA AS should block msg submitter thread if a thread pool is empty
Date Mon, 07 Jun 2010 17:27:42 GMT

    [ https://issues.apache.org/jira/browse/UIMA-1800?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12876316#action_12876316
] 

Jerry Cwiklik edited comment on UIMA-1800 at 6/7/10 1:27 PM:
-------------------------------------------------------------

Revert code that handles internal messaging (to/from colocated delegate) to previous version
that is not using BlockingThreadExecutor. Specifically, revert VMTransport and UimaVmMessageDispatcher.
The BlockingExecutor should still be used to process reply messages from remotes. For colocated
components dont require a samphore for submitting messages to a queue.  

      was (Author: cwiklik):
    Revert to previous version that is not using BlockingThreadExecutor. 
  
> 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.


Mime
View raw message