Matt Burgess created NIFI-5834:
----------------------------------

             Summary: Restore default PutHiveQL error handling behavior
                 Key: NIFI-5834
                 URL: https://issues.apache.org/jira/browse/NIFI-5834
             Project: Apache NiFi
          Issue Type: Bug
          Components: Extensions
            Reporter: Matt Burgess


As part of adding Rollback On Failure to PutHiveQL (via NIFI-3415), the code 
was refactored to allow failures to be rolled back rather than transferred to 
the failure relationship (if Rollback On Failure is set). As part of that, all 
transient SQLExceptions were declared to be of type "Temporal Failure". This 
(along with the refactor) allowed the failures to be handled as rollbacks or 
transfers as specified.

Hive returns all exceptions as transient SQLExceptions, with an error code that 
better infers the behavior of the operation.  This, via the discovery of 
NIFI-5045, resulted in the handling of error codes within the Hive error code 
range. However the default behavior when the error code is not in the 
Hive-valid range is to rollback regardless of whether Rollback On Failure is 
true or not. This was done as a "better safe than sorry" approach, but it made 
the behavior inconsistent with earlier versions of the processor, where 
failures were simply routed to failure rather than rolling back.

This case proposes to return the default behavior for unknown SQLExceptions to 
"TemporalFailure", which will make the behavior consistent with previous 
versions of the processor, where unknown errors will be transferred to failure 
unless Rollback on Failure is true.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to