You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2018/08/06 14:35:00 UTC

[jira] [Commented] (NIFI-5465) HandleHttpRequest times out requests if it goes more than 30 seconds without receiving data, regardless of the configured Request Timeout

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

ASF subversion and git services commented on NIFI-5465:
-------------------------------------------------------

Commit d1ab17580fe02766318e4a2d0ee5a76b0742d137 in nifi's branch refs/heads/master from [~markap14]
[ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=d1ab175 ]

NIFI-5465: Set the Idle Timeout on jetty connectors to the same as the Request Timeout.


> HandleHttpRequest times out requests if it goes more than 30 seconds without receiving data, regardless of the configured Request Timeout
> -----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-5465
>                 URL: https://issues.apache.org/jira/browse/NIFI-5465
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>            Priority: Major
>             Fix For: 1.8.0
>
>
> The HTTP Context Map allows the user to configure the "Request Timeout" but if data is written to the HTTP Request, then pauses for more than 30 seconds, then writes more data, then the request will timeout. We should allow request to go up to the configured "Request Timeout" before throwing a TimeoutException. The stack trace seen is:
> {code:java}
> org.apache.nifi.processor.exception.FlowFileAccessException: Failed to import data from HttpInputOverHTTP@5f73086c[c=16384,q=0,[0]=null,s=ERROR:java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms] for StandardFlowFileRecord[uuid=2c04929e-cd59-46b6-8612-c437c0230591,claim=,offset=0,name=84593375189600,size=0] due to org.apache.nifi.processor.exception.FlowFileAccessException: Unable to create ContentClaim due to java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms; rolling back session: {} 
> org.apache.nifi.processor.exception.FlowFileAccessException: Failed to import data from HttpInputOverHTTP@5f73086c[c=16384,q=0,[0]=null,s=ERROR:java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms] for StandardFlowFileRecord[uuid=2c04929e-cd59-46b6-8612-c437c0230591,claim=,offset=0,name=84593375189600,size=0] due to org.apache.nifi.processor.exception.FlowFileAccessException: Unable to create ContentClaim due to java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms 
> at org.apache.nifi.controller.repository.StandardProcessSession.importFrom(StandardProcessSession.java:2942) 
> at org.apache.nifi.processors.standard.HandleHttpRequest.onTrigger(HandleHttpRequest.java:507) 
> at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) 
> at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1122) 
> at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:147) 
> at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47) 
> at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:128) 
> at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
> at java.util.concurrent.FutureTask.runAndReset(Unknown Source) 
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source) 
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) 
> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
> at java.lang.Thread.run(Unknown Source) 
> Caused by: org.apache.nifi.processor.exception.FlowFileAccessException: Unable to create ContentClaim due to java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms 
> at org.apache.nifi.controller.repository.StandardProcessSession.importFrom(StandardProcessSession.java:2935) 
> ... 13 common frames omitted 
> Caused by: java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms 
> at org.eclipse.jetty.server.HttpInput$ErrorState.noContent(HttpInput.java:1047) 
> at org.eclipse.jetty.server.HttpInput.read(HttpInput.java:307) 
> at java.io.InputStream.read(Unknown Source) 
> at org.apache.nifi.stream.io.StreamUtils.copy(StreamUtils.java:35) 
> at org.apache.nifi.controller.repository.FileSystemRepository.importFrom(FileSystemRepository.java:734) 
> at org.apache.nifi.controller.repository.StandardProcessSession.importFrom(StandardProcessSession.java:2932) 
> ... 13 common frames omitted 
> Caused by: java.util.concurrent.TimeoutException: Idle timeout expired: 30003/30000 ms 
> at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:166) 
> at org.eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.java:50) 
> at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
> at java.util.concurrent.FutureTask.run(Unknown Source) 
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source) 
> ... 4 common frames omitted{code}



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