[
https://issues.apache.org/jira/browse/NIFI-4989?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16406632#comment-16406632
]
ASF GitHub Bot commented on NIFI-4989:
--------------------------------------
Github user MikeThomsen commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2560#discussion_r175836334
--- Diff:
nifi-nar-bundles/nifi-mongodb-bundle/nifi-mongodb-processors/src/main/java/org/apache/nifi/processors/mongodb/PutMongo.java
---
@@ -196,6 +237,33 @@ public void onTrigger(final ProcessContext context,
final ProcessSession session
}
}
+ private void removeUpdateKeys(String updateKeyParam, Map doc) {
+ String[] parts = updateKeyParam.split(",[\\s]*");
+ for (String part : parts) {
+ if (part.contains(".")) {
--- End diff --
> we don't need them to exist in the parsed filter query, right?
We do when replacing one document with another. Say you have a user account
document, and the update key is `username`. If the user is doing full document
replacement, and we remove the update key, the `username` field is going to be
removed from the document that is used in the substitution. So then the poor
end users will be searching through an accounts collection looking for
documents with no usernames.
> PutMongo cannot specify nested fields or multiple lookup keys
> -------------------------------------------------------------
>
> Key: NIFI-4989
> URL: https://issues.apache.org/jira/browse/NIFI-4989
> Project: Apache NiFi
> Issue Type: Improvement
> Reporter: Mike Thomsen
> Assignee: Mike Thomsen
> Priority: Major
>
> From the user mailing list:
> {quote}{color:#222222}I am using PutMongo processor to update documents in a
> mongoDB collection.{color}
> {color:#222222}I would like to specify nested field and multiple key in the
> update Key.{color}
> {color:#222222}For exemple :{color}
> {color:#222222}- my mongodb documents are {"nom":"HAMEL",
> "prenom":"Yves",{color}
> {color:#222222}"ids":\{"idSoc":"1234", "idInterne":"788"}}{color}
> {color:#222222}- I would'd like to set update query key to something like
> {"ids.idSoc" ,{color}
> {color:#222222}"nom"}{color}
> {color:#222222}- this would means that I update document with ids.idSoc and
> nom equals to{color}
> {color:#222222}my mew document.{color}
> {quote}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)