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

UIMA-AS CAS multiplier hangs fetching empty CAS after client timeouts

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3.1AS
    • Fix Version/s: 2.4.0AS
    • Component/s: Async Scaleout
    • Labels:
    • Environment:

      RedHat Enterprise Linux 6.0, Mac OSX Lion 10.7.3

      Description

      I'm attaching a test case that reproduces the hang. See the README inside the zip about how to execute it.

      The annotator (ForwardJCas) consists of a simple CAS multiplier with delays in it scaled out in its own thread within 2 levels of aggregates. It receives a CAS, sleeps for 3 seconds, gets a new empty CAS, copies information into it, sleeps again, and then returns the CAS. The unit test (UimaAsTest) initializes 40 UIMA-AS clients with a timeout of 8 seconds, send 1 CAS from each to the service, and then waits. After 1-2 runs, the CAS multiplier winds up hanging on the getEmptyCas() call in the scaled out annotator.

      What appears to be happening is that free CAS messages are not being sent from the client to the service in all cases when the timeouts occur. A similar defect (https://issues.apache.org/jira/browse/UIMA-1786) was fixed in 2.3.1 with slightly different symptoms.

        Attachments

        1. logs.zip
          183 kB
          Peter Parente
        2. uima-hang.zip
          22 kB
          Peter Parente

          Activity

            People

            • Assignee:
              cwiklik Jerry Cwiklik
              Reporter:
              parente Peter Parente
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: