You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by "Sam Hjelmfelt (JIRA)" <ji...@apache.org> on 2016/04/26 20:39:12 UTC

[jira] [Commented] (NIFI-1814) HandleHTTPResponse processor exceptions when connection is closed

    [ https://issues.apache.org/jira/browse/NIFI-1814?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15258665#comment-15258665 ] 

Sam Hjelmfelt commented on NIFI-1814:
-------------------------------------

Detailed error message from nifi-app.log

2016-04-26 14:35:05,323 ERROR [Timer-Driven Process Thread-5] o.a.n.p.standard.HandleHttpResponse HandleHttpResponse[id=cca1576b-5841-3fc1-b05a-5fd0f4853cb7] HandleHttpResponse[id=cca1576b-5841-3fc1-b05a-5fd0f4853cb7] failed to process session due to org.apache.nifi.proce
ssor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=8a8326e0-4e23-4660-b3a9-fb5a2ce50b85,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1461687660783-1, container=contS1R1, section=1], offset=1658, length=999718],offset
=0,name=1628641224040328,size=999718] to HttpOutput@5ee558a8{OPEN} due to org.eclipse.jetty.io.EofException: org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=8a8326e0-4e23-4660-b3a9-fb5a2ce50b85,claim=StandardConten
tClaim [resourceClaim=StandardResourceClaim[id=1461687660783-1, container=contS1R1, section=1], offset=1658, length=999718],offset=0,name=1628641224040328,size=999718] to HttpOutput@5ee558a8{OPEN} due to org.eclipse.jetty.io.EofException
2016-04-26 14:35:05,324 ERROR [Timer-Driven Process Thread-5] o.a.n.p.standard.HandleHttpResponse
org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=8a8326e0-4e23-4660-b3a9-fb5a2ce50b85,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1461687660783-1, container=contS1R1, section=1], offset=1658,
length=999718],offset=0,name=1628641224040328,size=999718] to HttpOutput@5ee558a8{OPEN} due to org.eclipse.jetty.io.EofException
        at org.apache.nifi.controller.repository.StandardProcessSession.exportTo(StandardProcessSession.java:2322) ~[nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.processors.standard.HandleHttpResponse.onTrigger(HandleHttpResponse.java:156) ~[na:na]
        at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) ~[nifi-api-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1059) ~[nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:136) [nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47) [nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:123) [nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_31]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_31]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_31]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_31]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_31]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_31]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_31]
Caused by: org.eclipse.jetty.io.EofException: null
        at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:192) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.flush(SslConnection.java:793) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:408) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:302) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.io.AbstractEndPoint.write(AbstractEndPoint.java:129) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpConnection$SendCallback.process(HttpConnection.java:684) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.util.IteratingCallback.processing(IteratingCallback.java:246) ~[jetty-util-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.util.IteratingCallback.iterate(IteratingCallback.java:208) ~[jetty-util-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpConnection.send(HttpConnection.java:480) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpChannel.sendResponse(HttpChannel.java:768) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpChannel.write(HttpChannel.java:801) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:147) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:140) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:355) ~[jetty-server-9.2.11.v20150529.jar:9.2.11.v20150529]
        at org.apache.nifi.stream.io.StreamUtils.copy(StreamUtils.java:36) ~[nifi-utils-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.repository.FileSystemRepository.exportTo(FileSystemRepository.java:753) ~[nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.repository.FileSystemRepository.exportTo(FileSystemRepository.java:767) ~[nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        at org.apache.nifi.controller.repository.StandardProcessSession.exportTo(StandardProcessSession.java:2317) ~[nifi-framework-core-0.6.0.1.2.0.0-91.jar:0.6.0.1.2.0.0-91]
        ... 13 common frames omitted
Caused by: java.io.IOException: Broken pipe
        at sun.nio.ch.FileDispatcherImpl.write0(Native Method) ~[na:1.8.0_31]
        at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) ~[na:1.8.0_31]
        at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93) ~[na:1.8.0_31]
        at sun.nio.ch.IOUtil.write(IOUtil.java:65) ~[na:1.8.0_31]
        at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:470) ~[na:1.8.0_31]
        at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:170) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        ... 30 common frames omitted
2016-04-26 14:35:05,324 WARN [Timer-Driven Process Thread-5] o.a.n.p.standard.HandleHttpResponse HandleHttpResponse[id=cca1576b-5841-3fc1-b05a-5fd0f4853cb7] Processor Administratively Yielded for 1 sec due to processing failure
2016-04-26 14:35:05,324 WARN [Timer-Driven Process Thread-5] o.a.n.c.t.ContinuallyRunProcessorTask Administratively Yielding HandleHttpResponse[id=cca1576b-5841-3fc1-b05a-5fd0f4853cb7] due to uncaught Exception: org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=8a8326e0-4e23-4660-b3a9-fb5a2ce50b85,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1461687660783-1, container=contS1R1, section=1], offset=1658, length=999718],offset=0,name=1628641224040328,size=999718] to HttpOutput@5ee558a8{OPEN} due to org.eclipse.jetty.io.EofException

> HandleHTTPResponse processor exceptions when connection is closed
> -----------------------------------------------------------------
>
>                 Key: NIFI-1814
>                 URL: https://issues.apache.org/jira/browse/NIFI-1814
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 0.6.1
>         Environment: Centos 6
>            Reporter: Sam Hjelmfelt
>
> If a HTTP connection is closed before a response is sent, the HandleHTTPResponse processor will throw an exception, yield due to failure, then try processing the rest of the events. If multiple errors happen at once, this compounded delay can cause cascading issues as the other connections timeout and close.
> Instead, the exception should be caught and the flowfile should go to the error relationship. A closed connection should not fail the processor, but instead fail the flowfile.
> Exception:
> HandleHttpResponse[id=cca1576b-5841-3fc1-b05a-5fd0f4853cb7] failed to process session due to org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=febaedb5-4830-46b7-b0f9-71b453a4743c,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1461688143223-3, container=contS2R1, section=3], offset=999718, length=999718],offset=0,name=1628795866820216,size=999718] to HttpOutput@28849fc{OPEN} due to org.eclipse.jetty.io.EofException: org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=febaedb5-4830-46b7-b0f9-71b453a4743c,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1461688143223-3, container=contS2R1, section=3], offset=999718, length=999718],offset=0,name=1628795866820216,size=999718] to HttpOutput@28849fc{OPEN} due to org.eclipse.jetty.io.EofException
> Processor Administratively Yielded for 1 sec due to processing failure



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)