Re: IOException: Broken Pipe causes "Calling [asyncError()] is not valid for a request with Async state [MUST_DISPATCH]" to be logged

2019-10-20 Thread Johannes Edmeier
Am So., 20. Okt. 2019 um 16:11 Uhr schrieb Mark Thomas :
>
> On October 20, 2019 9:43:00 AM UTC, Johannes Edmeier 
>  wrote:
> >Hi folks,
> >
> >I have a async response which is designed to run as long as the
> >browser is connected (using SSE).
> >After the browser disconnects and data is written to the response
> >internally a "IOException: Broken Pipe" is thrown, which itself is not
> >logged, but there is some error from the state handling logged (see
> >below) which is quite noisy. Is there somehow to prevent this from
> >happening? or is this a bug?
>
> It may be an application bug or a Tomcat bug. The Tomcat side of things has 
> been cleaned up for 9.9.28.
>
> Mark
>

Thanks for your quick response. I did test it with the 9.0.28-dev and
indeed the error isn't logged anymore.
Thanks a lot and keep up the good work!

Johannes

>
> >
> >(also happens with tomcat 9.0.27)
> >The spring boot guys also did have a lookt at it:
> >https://github.com/spring-projects/spring-boot/issues/15057
> >
> >Cheerio
> >Johannes
> >
> > 2018-11-02 11:43:33.016 ERROR 17152 --- [nio-8080-exec-2]
> >o.a.catalina.connector.CoyoteAdapter : Exception while processing
> >an asynchronous request
> >
> >java.lang.IllegalStateException: Calling [asyncError()] is not valid
> >for a request with Async state [MUST_DISPATCH]
> >at
> >org.apache.coyote.AsyncStateMachine.asyncError(AsyncStateMachine.java:440)
> >~[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.coyote.AbstractProcessor.action(AbstractProcessor.java:494)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at org.apache.coyote.Request.action(Request.java:430)
> >~[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.catalina.core.AsyncContextImpl.setErrorState(AsyncContextImpl.java:382)
> >~[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.catalina.connector.CoyoteAdapter.asyncDispatch(CoyoteAdapter.java:239)
> >~[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.coyote.AbstractProcessor.dispatch(AbstractProcessor.java:241)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at
> >java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> >[na:1.8.0_181]
> >at
> >java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> >[na:1.8.0_181]
> >at
> >org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> >[tomcat-embed-core-9.0.12.jar:9.0.12]
> >at java.lang.Thread.run(Thread.java:748) [na:1.8.0_181]
> >```
> >
> >-
> >To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> >For additional commands, e-mail: users-h...@tomcat.apache.org
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org



IOException: Broken Pipe causes "Calling [asyncError()] is not valid for a request with Async state [MUST_DISPATCH]" to be logged

2019-10-20 Thread Johannes Edmeier
Hi folks,

I have a async response which is designed to run as long as the
browser is connected (using SSE).
After the browser disconnects and data is written to the response
internally a "IOException: Broken Pipe" is thrown, which itself is not
logged, but there is some error from the state handling logged (see
below) which is quite noisy. Is there somehow to prevent this from
happening? or is this a bug?

(also happens with tomcat 9.0.27)
The spring boot guys also did have a lookt at it:
https://github.com/spring-projects/spring-boot/issues/15057

Cheerio
Johannes

 2018-11-02 11:43:33.016 ERROR 17152 --- [nio-8080-exec-2]
o.a.catalina.connector.CoyoteAdapter : Exception while processing
an asynchronous request

java.lang.IllegalStateException: Calling [asyncError()] is not valid
for a request with Async state [MUST_DISPATCH]
at org.apache.coyote.AsyncStateMachine.asyncError(AsyncStateMachine.java:440)
~[tomcat-embed-core-9.0.12.jar:9.0.12]
at org.apache.coyote.AbstractProcessor.action(AbstractProcessor.java:494)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at org.apache.coyote.Request.action(Request.java:430)
~[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.catalina.core.AsyncContextImpl.setErrorState(AsyncContextImpl.java:382)
~[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.catalina.connector.CoyoteAdapter.asyncDispatch(CoyoteAdapter.java:239)
~[tomcat-embed-core-9.0.12.jar:9.0.12]
at org.apache.coyote.AbstractProcessor.dispatch(AbstractProcessor.java:241)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[na:1.8.0_181]
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[na:1.8.0_181]
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[tomcat-embed-core-9.0.12.jar:9.0.12]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_181]
```

-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org