You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Jerry Cwiklik (Closed) (JIRA)" <de...@uima.apache.org> on 2012/01/20 17:23:39 UTC

[jira] [Closed] (UIMA-2354) UIMA AS aggregate fetches too many msgs from its service queue

     [ https://issues.apache.org/jira/browse/UIMA-2354?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jerry Cwiklik closed UIMA-2354.
-------------------------------

    Resolution: Fixed

Associate zero-permit, shared semaphore with a receiving thread via ThreadLocal and also associate the same semaphore with a InProcessCache entry of the CAS. When the CAS is delivered to the delegate's queue, block the receiving thread on semaphore.aquire(). When the CAS is fully processed and returned back to a client, the semaphore is released and the receiving thread proceeds to take another CAS from a service queue. 
                
> UIMA AS aggregate fetches too many msgs from its service queue
> --------------------------------------------------------------
>
>                 Key: UIMA-2354
>                 URL: https://issues.apache.org/jira/browse/UIMA-2354
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.4.0AS
>
>
> In this scenario UIMA AS aggregate thread receives a msg from a service queue, desarializes a CAS, fetches the next step from the FC, and deliveres the CAS to a delegate's queue. Once the CAS is delivered to the delegate's queue, the receiving thread is done and proceeds to fetch another msg from a service queue. This is wrong and totaly breaks prefetch=0 idea and effects load balancing if there are multiple instances of UIMA AS aggregate. The receiving thread should not fetch another msg while the previous CAS is still in-play. The code should block the receiving thread after a CAS is delivered to a delegate's queue until the CAS is fully processed.    

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira