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-1245) Processing order of parent CAS different on UIMA and UIMA AS
Date Tue, 24 Feb 2009 15:16:03 GMT

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

Burn Lewis commented on UIMA-1245:

To summarize my understanding of recent discussions ...

First I'd like to suggest that the default should not change.  Processing the parent last
does not guarantee that UIMA-AS will act like core UIMA ... in addition the size of all downstream
pools must be set to 1 to ensure that each child is processed sequentially.  We should document
the settings needed for UIMA-like processing but I think the default should be UIMA-AS style
processing, i.e. processParentLast="false".

With the current design parents are held in the final step of an aggregate until all children
have completed processing in that aggregate.  This ensures that any child errors can be reported
on the input CAS, and that aggregate CMs satisfy the CM contract of not processing the parent
until all children have been returned.  If this aggregate is nested in another, the same conditions
hold at the final step of the outer aggregate.

But with this new processParentLast="true" option the parent must be held after the CM until
all of its children have completed processing in all aggregates, i.e. have been returned to
their pool.  Unlike the previous case we must track the number of children active in any of
the nested aggregates.

> Processing order of parent CAS different on UIMA and UIMA AS
> ------------------------------------------------------------
>                 Key: UIMA-1245
>                 URL: https://issues.apache.org/jira/browse/UIMA-1245
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>            Reporter: Eddie Epstein
> Arron Kaplan raised the question of when parent CASes are processed relative to their
children. See http://markmail.org/message/5cop7iv2nshouhgs  As of now, the processing order
for a multi-threaded UIMA AS aggregate is different than that for a single-threaded UIMA aggregate.
> A discussion with Burn, Adam, Jerry, Marshall and myself concluded that the default processing
order for UIMA AS should be changed to be the same as in UIMA, in order to have the same application
behavior for both. This will be done by suspending flow of a parent CAS after it is returned
from a CasMultiplier delegate until all its children CASes have finished processing.
> However, there also needs to be a UIMA AS deployment option for CasMultiplier delegates
that allows the parent CAS to resume processing immediately after being returned from the
CM. This option is needed to enable parallel processing.

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

View raw message