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 (JIRA)" <ui...@incubator.apache.org> on 2008/10/29 17:56:44 UTC

[jira] Updated: (UIMA-1219) UIMA AS Aggregate Hangs While Processing Multiple CASes from the Client

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

Jerry Cwiklik updated UIMA-1219:
--------------------------------

    Attachment: uimaj-as-jms-UIMA-1219-patch.txt
                uimaj-as-core-UIMA-1219-patch.txt

The hang was caused by the Uima As client not resetting a boolean flag: receivedCpcReply before sending CPC request to the service. So after the first CPC reply was received, the flag was always true for subsequent iterations. The Uima AS client code was not waiting for a CPC reply (since the flag was set to true after first reply) and instead proceeded with sending a new CAS process request while the service was still working on CPC. Modified client's collectionProcessingComplete() method to set receivedCpcReply = false before the CPC is sent to the service. The client code will than block waiting for CPC reply before sending another CAS.
 
Also fixed the Aggregate controller code in the finalStep(). The code was changing the state of the CAS entry in the cache WaitingForRelease=true. This is only used for top level remote Aggregate CAS Multipliers. This indicates that the CAS is awaiting explicit Free CAS notification from the client.

> UIMA AS Aggregate Hangs While Processing Multiple CASes from the Client
> -----------------------------------------------------------------------
>
>                 Key: UIMA-1219
>                 URL: https://issues.apache.org/jira/browse/UIMA-1219
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>            Reporter: Jerry Cwiklik
>         Attachments: uimaj-as-core-UIMA-1219-patch.txt, uimaj-as-jms-UIMA-1219-patch.txt
>
>
> UIMA As hangs when processing multiple requests from a client. The scenario leading to the hang uses a complex aggregate that contains 1 nested colocated aggregate and 1 Cas Multiplier. The client application sends a CAS, receives a reply and subsequently sends the CPC. The client is in the loop sending CAS and CPC numerous times. A few tries succeed but eventually the aggregate hangs.

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