You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Marshall Schor (JIRA)" <de...@uima.apache.org> on 2016/09/01 17:11:20 UTC

[jira] [Assigned] (UIMA-5097) Current component info on CAS not reset

     [ https://issues.apache.org/jira/browse/UIMA-5097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marshall Schor reassigned UIMA-5097:
------------------------------------

    Assignee: Marshall Schor

> Current component info on CAS not reset
> ---------------------------------------
>
>                 Key: UIMA-5097
>                 URL: https://issues.apache.org/jira/browse/UIMA-5097
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>            Reporter: Richard Eckart de Castilho
>            Assignee: Marshall Schor
>         Attachments: UIMA5097SuiteTest.java
>
>
> uimaFIT tests re-use a single CAS which is stored in a thread-local variable and reset that CAS between unit tests. Apparently there was some change which causes the Sofa-mapping information - or more specifically the current component info from which that mapping is obtained - to not be reset anymore. The problem only appears when running all uimafit-core tests jointly in one JVM, e.g. from Eclipse.
> Initial hypothesis which proved to be wrong: 
> There may be a bug that might be related to the UimaContextHolder not being cleaned up probably (probably in case of some kind of failure).
> The problem appears when running the uimafit-core tests in Eclipse. Here all tests run in the same JVM instance which allows "global" information like thread locals to be carried over between unit tests.
> Then running all tests and when the `ViewCreatorAnnotatorTest` runs before the `SimplePipelineTest`, then the deserialization of an XMI file fails because `_InitialView` is still mapped to `myView` in the UIMA context. Debugging yields that the UIMAContext in use for the SimplePipelineTest apparently still belongs to the `ViewCreatorAnnotatorTest` because the *mQualifiedContextName* is `/org.apache.uima.fit.component.ViewCreatorAnnotatorTest$SofaAwareAnnotator/`
> This hypothesis was wrong: checked it by verifying that UimaContextHolder.getContext() is null before and after each unit test.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)