uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Burn Lewis (JIRA)" <uima-...@incubator.apache.org>
Subject [jira] Commented: (UIMA-1149) [UIMA-AS] fix potential thread safety issue with flow controller code
Date Fri, 02 Oct 2009 21:25:23 GMT

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

Burn Lewis commented on UIMA-1149:

Is synchronization also needed around the FlowContainer next() call in executeFlowStep in
AggregateAnalysisEngineController_impl.java ?

> [UIMA-AS] fix potential thread safety issue with flow controller code
> ---------------------------------------------------------------------
>                 Key: UIMA-1149
>                 URL: https://issues.apache.org/jira/browse/UIMA-1149
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>    Affects Versions: 2.2.2AS
>            Reporter: Marshall Schor
>            Priority: Minor
>             Fix For: 2.3AS
>         Attachments: uimaj-as-core-UIMA-1149-patch.txt
> The general "contract" regarding threading for user-written UIMA components is that components
do not have to be written to be thread-safe, or, more precisely, the framework guarantees
it will not call an instance of a user-written component class on multiple threads at the
same time.  See http://incubator.apache.org/uima/downloads/releaseDocs/2.2.2-incubating/docs/html/tutorials_and_users_guides/tutorials_and_users_guides.html#ugr.tug.aae.contract_for_annotator_methods
> This is intended to make writing UIMA components by our user community easier, and to
eliminate many hard-to-diagnose issues that could occur otherwise.
> The FlowController main object class, the one that is specified in the custom flow control
specification for an aggregate, in UIMA-AS, can be (we think, but to be investigated :-) )
be called on multiple threads at the same time, in the current implementation.  This Jira
is to fix this, by synchronizing on the flow controller object so that users don't have to
write thread safe implementations of this class.
> Also, the docs in the above referenced manual should be updated to include the flow controller
object in the set of objects where the framework guarantees that instances of this object
will not be called on multiple threads at the same time.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message