[
https://issues.apache.org/jira/browse/NIFI-4759?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16324175#comment-16324175
]
ASF GitHub Bot commented on NIFI-4759:
--------------------------------------
Github user mgaido91 commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2401#discussion_r161261787
--- Diff:
nifi-nar-bundles/nifi-mongodb-bundle/nifi-mongodb-processors/src/test/java/org/apache/nifi/processors/mongodb/PutMongoTest.java
---
@@ -256,4 +257,74 @@ public void testUpsertWithOperators() throws Exception
{
Assert.assertEquals("Msg had wrong value", msg, "Hi");
}
}
+
+ /*
+ * Start NIFI-4759 Regression Tests
+ *
+ * 2 issues with ID field:
+ *
+ * * Assumed _id is the update key, causing failures when the user
configured a different one in the UI.
+ * * Treated _id as a string even when it is an ObjectID sent from
another processor as a string value.
+ *
+ * Expected behavior:
+ *
+ * * update key field should work no matter what (legal) value it is
set to be.
+ * * _ids that are ObjectID should become real ObjectIDs when added to
Mongo.
+ * * _ids that are arbitrary strings should be still go in as strings.
+ *
+ */
+ @Test
+ public void testNiFi_4759_Regressions() {
+ String[] upserts = new String[]{
+ "{\n" +
--- End diff --
What about writing the JSON document on one line?
> PutMongo does not handle updateKey field correctly
> --------------------------------------------------
>
> Key: NIFI-4759
> URL: https://issues.apache.org/jira/browse/NIFI-4759
> Project: Apache NiFi
> Issue Type: Bug
> Reporter: Mike Thomsen
> Assignee: Mike Thomsen
>
> Two issues:
> * The updateKey field is ignored in favor of _id in the update code block of
> PutMongo.
> * _id fields are always treated as strings, even if they're valid ObjectIds
> represented as a string. PutMongo should be able to handle these as ObjectIds.
> Regarding the first point, this works:
> {code:java}
> {
> "_id": "1234",
> "$set": { "msg": "Hello, world" }
> }
> {code}
> This does not:
> {code:java}
> {
> "uniqueKey": "12345",
> "$set": { "msg": "Hello, World" }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)