[
https://issues.apache.org/jira/browse/NIFI-3249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15780652#comment-15780652
]
ASF GitHub Bot commented on NIFI-3249:
--------------------------------------
Github user mattyb149 commented on a diff in the pull request:
https://github.com/apache/nifi/pull/1356#discussion_r93943294
--- Diff:
nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor/src/main/java/org/apache/nifi/processors/attributes/UpdateAttribute.java
---
@@ -259,6 +264,14 @@ public void onScheduled(final ProcessContext context)
throws IOException {
context.getStateManager().setState(tempMap, Scope.LOCAL);
}
+
+ defaultActions = getDefaultActions(context.getProperties());
--- End diff --
This is probably a crazy edge case, but what if the regex for Delete
Attributes Expression is defined by [Expression Language using flow file
attributes](https://issues.apache.org/jira/browse/NIFI-1123)?
> UpdateAttribute performance improvements
> ----------------------------------------
>
> Key: NIFI-3249
> URL: https://issues.apache.org/jira/browse/NIFI-3249
> Project: Apache NiFi
> Issue Type: Improvement
> Reporter: Bryan Rosander
> Assignee: Bryan Rosander
> Priority: Minor
> Attachments: after.png, before.png
>
>
> UpdateAttribute does a lot of work in every onTrigger() that it doesn't need
> to.
> The default actions map can be built at schedule time so that it doesn't need
> to be done on every trigger.
> getPropertyValue() can be implemented using ConcurrentMap.computeIfAbsent()
> Update actions can be ignored if there is a delete action for the same
> attribute.
> Only need to call processSession.updateAttributes() and
> processSession.deleteAttributes() if there are attributes to update and
> delete respectively.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)