Eddie Epstein created UIMA-3655:
-----------------------------------

             Summary: CasPool incorrectly stores references to the InitialView 
of each CAS
                 Key: UIMA-3655
                 URL: https://issues.apache.org/jira/browse/UIMA-3655
             Project: UIMA
          Issue Type: Bug
          Components: Core Java Framework
            Reporter: Eddie Epstein
            Assignee: Marshall Schor


For cas pools, getCas returns a handle to the InitialView of an empty CAS,
and stores this handle to match in releaseCas. This breaks for services that 
employ sofamapping. The empty CAS is filled from a serialized CAS sent to the 
service. It is possible that a CAS received may not contain the view, 
CAS.NAME_DEFAULT_SOFA, specified by sofamapping.

Then, when the service tries to return the CAS to the pool, releaseCas blows up 
at the first line,
CAS cas = aCas.getView(CAS.NAME_DEFAULT_SOFA);
so the CAS is not returned to the pool ==> CAS leak.

The cas pool should be storing references to the base CAS, which is independent 
of views.




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to