You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by GitBox <gi...@apache.org> on 2018/12/20 17:05:27 UTC

[GitHub] patricker closed pull request #3203: NIFI-5871 ignore UUID attribute when copying flow file attributes

patricker closed pull request #3203: NIFI-5871 ignore UUID attribute when copying flow file attributes
URL: https://github.com/apache/nifi/pull/3203
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/nifi-mock/src/main/java/org/apache/nifi/util/MockProcessSession.java b/nifi-mock/src/main/java/org/apache/nifi/util/MockProcessSession.java
index 1629e96e53..f48b91952d 100644
--- a/nifi-mock/src/main/java/org/apache/nifi/util/MockProcessSession.java
+++ b/nifi-mock/src/main/java/org/apache/nifi/util/MockProcessSession.java
@@ -496,7 +496,14 @@ public MockFlowFile putAllAttributes(FlowFile flowFile, final Map<String, String
         final MockFlowFile newFlowFile = new MockFlowFile(mock.getId(), flowFile);
         currentVersions.put(newFlowFile.getId(), newFlowFile);
 
-        newFlowFile.putAttributes(attrs);
+        final Map<String, String> updatedAttributes;
+        if (attrs.containsKey(CoreAttributes.UUID.key())) {
+            updatedAttributes = new HashMap<>(attrs);
+            updatedAttributes.remove(CoreAttributes.UUID.key());
+        } else {
+            updatedAttributes = attrs;
+        }
+        newFlowFile.putAttributes(updatedAttributes);
         return newFlowFile;
     }
 
diff --git a/nifi-nar-bundles/nifi-couchbase-bundle/nifi-couchbase-processors/src/test/java/org/apache/nifi/processors/couchbase/TestPutCouchbaseKey.java b/nifi-nar-bundles/nifi-couchbase-bundle/nifi-couchbase-processors/src/test/java/org/apache/nifi/processors/couchbase/TestPutCouchbaseKey.java
index ce9baa71bd..c32fff792a 100644
--- a/nifi-nar-bundles/nifi-couchbase-bundle/nifi-couchbase-processors/src/test/java/org/apache/nifi/processors/couchbase/TestPutCouchbaseKey.java
+++ b/nifi-nar-bundles/nifi-couchbase-bundle/nifi-couchbase-processors/src/test/java/org/apache/nifi/processors/couchbase/TestPutCouchbaseKey.java
@@ -268,7 +268,6 @@ public void testInputFlowFileUuid() throws Exception {
 
         ArgumentCaptor<RawJsonDocument> capture = ArgumentCaptor.forClass(RawJsonDocument.class);
         verify(bucket, times(1)).upsert(capture.capture(), eq(PersistTo.NONE), eq(ReplicateTo.NONE));
-        assertEquals(uuid, capture.getValue().id());
         assertEquals(inFileData, capture.getValue().content());
 
         testRunner.assertTransferCount(REL_SUCCESS, 1);
diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestWait.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestWait.java
index a4df2f37e9..5b5b6fcd22 100644
--- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestWait.java
+++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestWait.java
@@ -218,7 +218,6 @@ public void testReplaceAttributes() throws InitializationException, IOException
         waitAttributes.put("releaseSignalAttribute", "key");
         waitAttributes.put("wait.only", "waitValue");
         waitAttributes.put("both", "waitValue");
-        waitAttributes.put("uuid", UUID.randomUUID().toString());
         String flowFileContent = "content";
         runner.enqueue(flowFileContent.getBytes("UTF-8"), waitAttributes);
 
@@ -234,8 +233,6 @@ public void testReplaceAttributes() throws InitializationException, IOException
 
         // show a new attribute was copied from the cache
         assertEquals("notifyValue", outputFlowFile.getAttribute("notify.only"));
-        // show that uuid was not overwritten
-        assertEquals(waitAttributes.get("uuid"), outputFlowFile.getAttribute("uuid"));
         // show that the original attributes are still there
         assertEquals("waitValue", outputFlowFile.getAttribute("wait.only"));
 
@@ -265,7 +262,6 @@ public void testKeepOriginalAttributes() throws InitializationException, IOExcep
         waitAttributes.put("releaseSignalAttribute", "key");
         waitAttributes.put("wait.only", "waitValue");
         waitAttributes.put("both", "waitValue");
-        waitAttributes.put("uuid", UUID.randomUUID().toString());
         String flowFileContent = "content";
         runner.enqueue(flowFileContent.getBytes("UTF-8"), waitAttributes);
 
@@ -278,8 +274,6 @@ public void testKeepOriginalAttributes() throws InitializationException, IOExcep
 
         // show a new attribute was copied from the cache
         assertEquals("notifyValue", outputFlowFile.getAttribute("notify.only"));
-        // show that uuid was not overwritten
-        assertEquals(waitAttributes.get("uuid"), outputFlowFile.getAttribute("uuid"));
         // show that the original attributes are still there
         assertEquals("waitValue", outputFlowFile.getAttribute("wait.only"));
 
@@ -307,7 +301,6 @@ public void testWaitForTotalCount() throws InitializationException, IOException
         waitAttributes.put("targetSignalCount", "3");
         waitAttributes.put("wait.only", "waitValue");
         waitAttributes.put("both", "waitValue");
-        waitAttributes.put("uuid", UUID.randomUUID().toString());
         String flowFileContent = "content";
         runner.enqueue(flowFileContent.getBytes("UTF-8"), waitAttributes);
 
@@ -359,8 +352,6 @@ public void testWaitForTotalCount() throws InitializationException, IOException
 
         // show a new attribute was copied from the cache
         assertEquals("notifyValue", outputFlowFile.getAttribute("notify.only"));
-        // show that uuid was not overwritten
-        assertEquals(waitAttributes.get("uuid"), outputFlowFile.getAttribute("uuid"));
         // show that the original attributes are still there
         assertEquals("waitValue", outputFlowFile.getAttribute("wait.only"));
         // show that the original attribute is kept
@@ -391,7 +382,6 @@ public void testWaitForSpecificCount() throws InitializationException, IOExcepti
         waitAttributes.put("signalCounterName", "counter-B");
         waitAttributes.put("wait.only", "waitValue");
         waitAttributes.put("both", "waitValue");
-        waitAttributes.put("uuid", UUID.randomUUID().toString());
         String flowFileContent = "content";
         runner.enqueue(flowFileContent.getBytes("UTF-8"), waitAttributes);
 
@@ -446,8 +436,6 @@ public void testWaitForSpecificCount() throws InitializationException, IOExcepti
 
         // show a new attribute was copied from the cache
         assertEquals("notifyValue", outputFlowFile.getAttribute("notify.only"));
-        // show that uuid was not overwritten
-        assertEquals(waitAttributes.get("uuid"), outputFlowFile.getAttribute("uuid"));
         // show that the original attributes are still there
         assertEquals("waitValue", outputFlowFile.getAttribute("wait.only"));
         // show that the original attribute is kept


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services