Phil,

Just to clarify upon what Matt mentioned here, the session will automatically 
generate
the appropriate FORK event for you if you call ProcessSession.create(FlowFile) 
and
pass the 'parent' FlowFile to the session. If you just call 
ProcessSession.create() without
providing the parent, it will not be able to generate the FORK event for you. 
Calling
ProcessSession.create(FlowFile) is also important because it will copy the 
attributes from
the parent to the newly created FlowFile.

Thanks
-Mark

> On Nov 20, 2017, at 4:46 PM, Matt Burgess <[email protected]> wrote:
> 
> Phil,
> 
> There should be a FORK event generated by a processor that generates
> multiple flow files from an incoming one.  If a flow file is an exact
> copy of an incoming one, I believe it will have a CLONE event
> associated with it. Also, I think the session may handle this for you
> in the general case, although there are other processors like
> UnpackContent and QueryRecord that explicitly call
> ProvenanceReporter.fork().
> 
> Regards,
> Matt
> 
> On Mon, Nov 20, 2017 at 4:32 PM, Phil H <[email protected]> wrote:
>> Hi team,
>> 
>> If I have a processor that takes one input flow file, and then generates 
>> many flow file outputs as a result (say, one output per line from a 
>> multi-line input file), how do I indicate the provenance of the new flow 
>> files? I would like to see where they have come from for errors/analysis.
>> 
>> I couldn't see a method in the Provenance Reporter that seemed like it would 
>> do that (essentially link a new flow file to an old one)
>> 
>> Cheers,
>> Phil

Reply via email to