You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@uima.apache.org by Eddie Epstein <ea...@gmail.com> on 2013/11/18 03:24:15 UTC

Re: DUCC Work Items and Send To Last

On Sun, Nov 17, 2013 at 1:03 PM, Neal R Lewis <nr...@us.ibm.com> wrote:

> Let's assume a pipeline like that in the Sample that contains a CR as the
> Job Driver, and the JP contains a  CM, AE, and CC.
>
> If I understand correctly, the CR's getNext() returns a single Workitem
> CAS - a CAS tagged with the Workitem FS and references to data.  The Work
> Item CAS is sent the the JP, where the CM creates multiple CASes based on
> these references and sends them down the pipeline.  Normally, the WorkItem
> CAS would not continue down the pipeline after the CM (depending on
> configurations). The AE calls process() on each of the new CASes created
> by the CM, sending them to the CC, which also calls process() on each of
> these fragments.
>

Correct description for *each and every* workItem CAS returned by the CR.


>
> My question is, if SendToLast is true, what CAS does the CC call process()
> on?  Does it receive the workItem CAS and the CASes created by the CM as a
> single CAS?   Or, does it receive the multiple CASes from the CM, and call
> process() on each of those, and also receive the Workitem ( maybe before
> receiving the fragments)?
>

Without SendToLast the workItem CAS goes to the CM, and then after all
processing of child CASes has completed it is returned to the JobDriver.
With SendToLast = true, after all processing on child CASes has completed
the workItem CAS is sent to the CC and then returned.

Eddie

Re: DUCC Work Items and Send To Last

Posted by Neal R Lewis <nr...@us.ibm.com>.
Thanks Eddie,  that clears it up for me. 




From:   Eddie Epstein <ea...@gmail.com>
To:     user@uima.apache.org
Date:   11/17/2013 06:24 PM
Subject:        Re: DUCC Work Items and Send To Last



On Sun, Nov 17, 2013 at 1:03 PM, Neal R Lewis <nr...@us.ibm.com> wrote:

> Let's assume a pipeline like that in the Sample that contains a CR as 
the
> Job Driver, and the JP contains a  CM, AE, and CC.
>
> If I understand correctly, the CR's getNext() returns a single Workitem
> CAS - a CAS tagged with the Workitem FS and references to data.  The 
Work
> Item CAS is sent the the JP, where the CM creates multiple CASes based 
on
> these references and sends them down the pipeline.  Normally, the 
WorkItem
> CAS would not continue down the pipeline after the CM (depending on
> configurations). The AE calls process() on each of the new CASes created
> by the CM, sending them to the CC, which also calls process() on each of
> these fragments.
>

Correct description for *each and every* workItem CAS returned by the CR.


>
> My question is, if SendToLast is true, what CAS does the CC call 
process()
> on?  Does it receive the workItem CAS and the CASes created by the CM as 
a
> single CAS?   Or, does it receive the multiple CASes from the CM, and 
call
> process() on each of those, and also receive the Workitem ( maybe before
> receiving the fragments)?
>

Without SendToLast the workItem CAS goes to the CM, and then after all
processing of child CASes has completed it is returned to the JobDriver.
With SendToLast = true, after all processing on child CASes has completed
the workItem CAS is sent to the CC and then returned.

Eddie