Github user mattyb149 commented on the issue:
https://github.com/apache/nifi/pull/2448
I can't find any examples on where an "original" relationship is available
when progressive commits are also available, for the reason you mention above.
Progressive commits are available in QueryDatabaseTable but it is a source
processor and doesn't accept incoming flow files. The "original" relationship
is in processors like SplitXYZ where the content is changed but the original
input might need to be preserved, and all flow files are committed once at the
end. [NIFI-2878](https://issues.apache.org/jira/browse/NIFI-2878) is an open
issue to allow "streaming splits", but my guess is that the original
relationship will not be available, or we'd want to have consensus that
"original" can have different behavior based on the "partial commits" idea.
I've considered a couple approaches for this:
1) Do not transfer the input flow file to "original" if doing incremental
commits
2) Transfer the input flow file to "original" on the first incremental
commit
My concern with the former is that it may still be necessary to access the
input flow file. My concern with the latter is that it kind of implies that an
operation has succeeded, when continued processing after the first commit can
fail. At that point the flow may assume all flow files have been processed
(some flows count on "original" be emitted at the end of successful processing
and is used as a trigger). I'm not sure which is more user-friendly, thoughts?
---