[ 
https://issues.apache.org/jira/browse/NIFI-13393?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jim Steinebrey resolved NIFI-13393.
-----------------------------------
    Resolution: Not A Problem

> Avoid making extra transient flow file during FF creation
> ---------------------------------------------------------
>
>                 Key: NIFI-13393
>                 URL: https://issues.apache.org/jira/browse/NIFI-13393
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Core Framework
>    Affects Versions: 2.0.0-M3
>            Reporter: Jim Steinebrey
>            Assignee: Jim Steinebrey
>            Priority: Major
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> This PR is a proposal to see if the PMC agrees with this API change.
> I have not written any new unit tests for this PR yet until I get buy-in on 
> it.
> I added two new create methods to the API of ProcessSession to allow the 
> option of
> passing in ff attributes to be added to the flow file being created. This is 
> not
> a breaking change because the original create methods are still there.
> ProcessSession
> FlowFile create(FlowFile parent, final Map<String, String> attributes);
> FlowFile create(final Map<String, String> attributes);
> Changing a core API is a very significant change but I hope people will see 
> it 
> as worthwhile to allow us to to avoid creating an extra FlowFile object in 
> many 
> places that FlowFiles are created. Not all places set attributes right after \
> FF creation, but very many of them do and could benefit.
> There are 150+ places where these new methods can be used and I only changed 
> the 
> GenerateTableFetch processor to call them so you how the new methods are used.
> I expect using these new create methods has the potential to 
> avoid noticeable transient memory allocation like the earlier API addition of
> SessionContext.isAutoTerminated did.
> Also if this PR is approved, myself and others can change processors to call 
> these 
> new methods in a future PRs (not as part of this PR).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to