Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-1786

UIMA AS aggregate CM hangs due to client not sending Free Cas Request

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3AS
    • 2.3.1AS
    • Async Scaleout
    • None

    Description

      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.

      Attachments

        Activity

          People

            cwiklik Jaroslaw Cwiklik
            cwiklik Jaroslaw Cwiklik
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: