[
https://issues.apache.org/jira/browse/NIFI-813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15868310#comment-15868310
]
Joseph Witt commented on NIFI-813:
----------------------------------
This issue also exposes inconsistent handling in EL cases.
EL with JSON where the input is not valid JSON causes an exception.
UpdateAttribute then causes a rollback. This is not ideal. However, Aldrin's
comments above make me think we need to ensure we're consistent. Between the
JSON handling and the date handling we can have different issues. One could
result in an empty string placed on the object and the other causes the
processor to rollback. Further, in the JSON example if we let the
UpdateAttribute just put empty string for invalid JSON when using an EL we
would have a flow that really slows down and bogs down the system due to
underlying exceptions happening. I feel it is more correct in such a case to
cause rollbacks as is currently the case, update other scenarios like date
handling to do the same, and then provide tools to help people validate the
input better. I'm not sure. Could go a number of ways here.
> UpdateAttribute does not have a failure relationship for handling EL failures
> -----------------------------------------------------------------------------
>
> Key: NIFI-813
> URL: https://issues.apache.org/jira/browse/NIFI-813
> Project: Apache NiFi
> Issue Type: Bug
> Components: Core Framework, Extensions
> Affects Versions: 0.2.1
> Reporter: Aldrin Piri
> Attachments: NIFI-813_Example.xml
>
>
> UpdateAttribute's genesis predates expression language, and as originally
> created would have made failure improbable (impossible?) in context of
> typical processing. As a result, when EL was introduced, there was also a
> means wherein the processor could fail. Currently, there is no failure
> relationship. As a result, the only way to remove files that are failing due
> to an EL issues and placed back onto the queue is through an expiration on
> the incoming connection. One particular instance is that of formatting a bad
> date input. Template showing example to follow.
> It could be the case this is a deficiency in just this particular EL
> function, but should EL become an extension point, it is entirely conceivable
> that failure cases become an occurrence that needs to be handled.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)