UIMA
  1. UIMA
  2. UIMA-1400

Uima aggregate with embedded Cas Multiplier fails if one attempts to create multiple instances of it in the same JVM

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.2.2
    • Fix Version/s: 2.3
    • Component/s: Core Java Framework
    • Labels:
      None

      Description

      When trying to scale Uima aggregate with a Cas Multiplier in the same JVM, the code fails with the following:

      org.apache.uima.analysis_engine.AnalysisEngineProcessException: The
      method CasManager.defineCasPool() was called twice by the same Analysis
      Engine

      This is due to the fact that the CasManager creates a single CAS pool for any given Cas Multiplier, no matter how many instances of it are created. The first instance of a particular CM creates a CAS Pool and the pool is associated with that instance using a CM's qualified name obtained from the component's uima context. The second instance of the same CM fails, since its trying to create another CAS pool with the same qualified name as the first instance.

      Create and assign a unique name in the Uima context for each instance of a component. Use the unique name when calling defineCasPool() so that every instance of the CM component creates its own CAS pool.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Jerry Cwiklik
              Reporter:
              Jerry Cwiklik
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development