uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard Eckart de Castilho (JIRA)" <...@uima.apache.org>
Subject [jira] [Commented] (UIMA-5058) Scaled out pipelines can falsely trigger the error: Illegal adding of additional MetaData after CASes have been defined
Date Mon, 06 Feb 2017 10:25:41 GMT

    [ https://issues.apache.org/jira/browse/UIMA-5058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15853804#comment-15853804
] 

Richard Eckart de Castilho commented on UIMA-5058:
--------------------------------------------------

Ok, so the above thing about the URL was a red herring.

Here is what happens: CasManager_impl.containsSameTypeAndIndexInfo(ProcessingResourceMetaData)
internally compares the cached metadata with the metadata from the new descriptor. In my particular
case, the type system priorities from the new descriptor is "null" while the cached descriptor
contains a "default" type system priorities

{noformat}
org.apache.uima.resource.metadata.impl.TypePriorities_impl: 
description = NULL
imports = Array{}

name = NULL
priorityLists = Array{}

vendor = NULL
version = NULL
{noformat}

This only happens when uimaFIT makes use of the resource manager contained obtained through

{noformat}
UimaContext activeContext = UimaContextHolder.getContext();
{noformat}

If I force uimaFIT to create a new resource manager for each component/pipeline, then I don't
get an error.

> Scaled out pipelines can falsely trigger the error: Illegal adding of additional MetaData
after CASes have been defined
> -----------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-5058
>                 URL: https://issues.apache.org/jira/browse/UIMA-5058
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.8.1SDK
>            Reporter: Burn Lewis
>            Assignee: Burn Lewis
>             Fix For: 2.9.0SDK, 3.0.0SDK-alpha
>
>
> When UIMA-AS scales out a synchronous UIMA pipeline it sequentially creates separate
AEs in separate threads, sharing the resource manager.  Creation of the 2nd (identical) AE
will fail with "Illegal adding of additional MetaData after CASes have been defined" if a
descriptor imports 2 type-system files, one of which is included in the other.  The check
fails to recognize that the types loaded by the 2nd AE are already in the resource manager
because of the way type-systems are cached.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message