NIFI-782: Make sure that FlowFiles' lineage identifiers are propagated properly


Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/496ebfb3
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/496ebfb3
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/496ebfb3

Branch: refs/heads/NIFI-744
Commit: 496ebfb3be78bf47c0aa957a3f44fdc76e488e5a
Parents: bf84ce6
Author: Mark Payne <[email protected]>
Authored: Fri Jul 31 09:55:08 2015 -0400
Committer: Mark Payne <[email protected]>
Committed: Fri Jul 31 09:55:08 2015 -0400

----------------------------------------------------------------------
 .../nifi/controller/repository/StandardProcessSession.java      | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/496ebfb3/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
 
b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
index 04e819e..2e33c22 100644
--- 
a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
+++ 
b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
@@ -2522,7 +2522,9 @@ public final class StandardProcessSession implements 
ProcessSession, ProvenanceE
             newAttributes.put(key, value);
         }
 
-        fFileBuilder.lineageIdentifiers(parent.getLineageIdentifiers());
+        final Set<String> lineageIdentifiers = new 
HashSet<>(parent.getLineageIdentifiers());
+        lineageIdentifiers.add(parent.getAttribute(CoreAttributes.UUID.key()));
+        fFileBuilder.lineageIdentifiers(lineageIdentifiers);
         fFileBuilder.lineageStartDate(parent.getLineageStartDate());
         fFileBuilder.addAttributes(newAttributes);
 
@@ -2549,6 +2551,7 @@ public final class StandardProcessSession implements 
ProcessSession, ProvenanceE
         final Set<String> lineageIdentifiers = new HashSet<>();
         for (final FlowFile parent : parents) {
             lineageIdentifiers.addAll(parent.getLineageIdentifiers());
+            
lineageIdentifiers.add(parent.getAttribute(CoreAttributes.UUID.key()));
 
             final long parentLineageStartDate = parent.getLineageStartDate();
             if (lineageStartDate == 0L || parentLineageStartDate < 
lineageStartDate) {

Reply via email to