UIMA AS aggregate CM hangs due to client not sending Free Cas Request
---------------------------------------------------------------------
Key: UIMA-1786
URL: https://issues.apache.org/jira/browse/UIMA-1786
Project: UIMA
Issue Type: Bug
Components: Async Scaleout
Affects Versions: 2.3AS
Reporter: Jerry Cwiklik
Assignee: Jerry Cwiklik
The UIMA AS client is not handling expired CASes coming from a Cas Multiplier
aggregate.The scenario leading to a problem is as follows:
The aggregate CM is configured with a single thread in a listener processing
Process and CPC requests. The client is configured to timeout before the
service sends a child CAS. The client is configured with no CPC timeout.
UIMA AS client sends a CAS to an aggregate CasMultiplier which takes a long
time to process (or there is a long GC). Before any child CASes are sent to a
client, the client times out and sends a CPC. A bit later, the aggregate CM
sends a child CAS. The client receives the CAS and finds that its parent CAS
has expired. The client logs a message and ignores the CAS. The client is NOT
sending the free Cas request to the aggregate CM, causing the aggregate to hang
waiting for all of its CASes to be processed. Since the Free CAS never comes,
the aggregate internal state is never updated and the thread processing the CPC
is stuck (hangs). Modify UIMA AS client code to *always* send free cas request
to a CM service.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.