Github user mattyb149 commented on the issue:
https://github.com/apache/nifi/pull/1658
With PutHiveQL, I sent one valid statement, then one bad one, then another
valid one. The first one was processed correctly and successfully, the second
one caused and error and remained in the queue, but the third one was not
processed nor was it in the incoming or outgoing (failure/retry) queue.
Provenance shows a SEND event for the first one, DROP events for the first and
third, and only the CREATE event for the second (aka "bad") one. I was thinking
the incoming queue would possibly have the second one (if the error is a
ProcessException vs something that routes the flow file) and the third one, or
failure/retry (if a failed flow file is routed) would have the second one.
Here's a stack trace showing the processing of the bad record (in case it
helps):
```
org.apache.nifi.processor.exception.ProcessException: Failed to process
org.apache.nifi.processor.util.pattern.ExceptionHandler$$Lambda$397/1081958194@17605416
due to org.apache.hive.service.cli.HiveSQLException: Error while compiling
statement: FAILED: ParseException line 1:0 cannot recognize input near 'INERT'
'INTO' 'TABLE'
at
org.apache.nifi.processor.util.pattern.ExceptionHandler.lambda$createOnGroupError$12(ExceptionHandler.java:210)
at
org.apache.nifi.processor.util.pattern.ExceptionHandler.lambda$createOnError$11(ExceptionHandler.java:178)
at
org.apache.nifi.processor.util.pattern.ExceptionHandler$OnError.lambda$andThen$9(ExceptionHandler.java:53)
at
org.apache.nifi.processor.util.pattern.ExceptionHandler$OnError.lambda$andThen$9(ExceptionHandler.java:53)
at
org.apache.nifi.processor.util.pattern.ExceptionHandler.execute(ExceptionHandler.java:147)
at
org.apache.nifi.processors.hive.PutHiveQL.lambda$new$44(PutHiveQL.java:199)
at org.apache.nifi.processor.util.pattern.Put.putFlowFiles(Put.java:58)
at org.apache.nifi.processor.util.pattern.Put.onTrigger(Put.java:100)
at
org.apache.nifi.processors.hive.PutHiveQL.lambda$onTrigger$46(PutHiveQL.java:255)
at
org.apache.nifi.processor.util.pattern.PartialFunctions.onTrigger(PartialFunctions.java:114)
at
org.apache.nifi.processor.util.pattern.RollbackOnFailure.onTrigger(RollbackOnFailure.java:184)
at
org.apache.nifi.processors.hive.PutHiveQL.onTrigger(PutHiveQL.java:255)
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1115)
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:144)
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47)
at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:132)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
```
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---