nifi-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sebastian Lagemann | iQU <sebastian.lagem...@iqu.com>
Subject Problem with HandleHttpRequest/HandleHttpResponse
Date Tue, 13 Oct 2015 11:44:08 GMT
Hi,

We experience currently the problem that we got an „Failed to export StandardFlowFileRecord
to HttpOutput due to org.eclipse.jetty.io.EofException“ exception which blocks incoming
HTTP requests and with queued flow files between the HandleHttpRequest and HandleHttpResponse
connection until we restart the corresponding node.  and the event stream in total.

We have the following configuration:
[cid:9E4253D4-B4FD-4F50-922C-743D9B781936]

We get the following exception:

org.apache.nifi.processor.exception.FlowFileAccessException: Failed to export StandardFlowFileRecord[uuid=fa00a5b5-7e54-4688-b389-7dcd012607b8,claim=StandardContentClaim
[resourceClaim=StandardResourceClaim[id=1444734001395-1,
container=default, section=1], offset=0, length=147356],offset=0,name=10200723618730079,size=147356]
to HttpOutput@19fff77e{OPEN} due to org.eclipse.jetty.io.EofException
        at org.apache.nifi.controller.repository.StandardProcessSession.exportTo(StandardProcessSession.java:2305)
~[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.processors.standard.HandleHttpResponse.onTrigger(HandleHttpResponse.java:153)
~[na:na]
        at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
~[nifi-api-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1077)
~[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:127)
[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:119)
[nifi-framework-core-0.3.0.jar:0.3.0]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_79]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_79]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
[na:1.7.0_79]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
[na:1.7.0_79]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[na:1.7.0_79]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[na:1.7.0_79]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
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.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:690)
~[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.3.0.jar:0.3.0]
        at org.apache.nifi.controller.repository.FileSystemRepository.exportTo(FileSystemRepository.java:752)
~[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.repository.FileSystemRepository.exportTo(FileSystemRepository.java:766)
~[nifi-framework-core-0.3.0.jar:0.3.0]
        at org.apache.nifi.controller.repository.StandardProcessSession.exportTo(StandardProcessSession.java:2300)
~[nifi-framework-core-0.3.0.jar:0.3.0]
        ... 13 common frames omitted
Caused by: java.io.IOException: Broken pipe
        at sun.nio.ch.FileDispatcherImpl.write0(Native Method) ~[na:1.7.0_79]
        at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) ~[na:1.7.0_79]
        at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93) ~[na:1.7.0_79]
        at sun.nio.ch.IOUtil.write(IOUtil.java:65) ~[na:1.7.0_79]
        at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:488) ~[na:1.7.0_79]
        at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:170) ~[jetty-io-9.2.11.v20150529.jar:9.2.11.v20150529]
        ... 29 common frames omitted


Unfortunately we`re right now unable to re-produce the problem predictable but It seems that
the sending part is closing the connection before HandleHttpResponse is able to finish the
job. In our assumption we expected that, if that is the case, the HandleHttpResponse processor
sends the event to the failure relationship.

We`re using nifi-0.3.0, java 1.7.0_79 (OpenJDK) on an Ubuntu 12.04 LTS server.

The question is if the behavior is expected and we did something wrong or is this a bug?

Thanks for your help,

Seb

Mime
View raw message