New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[gateway] Stack trace in case of HTTP Client exception #283

Closed
brasseld opened this Issue Oct 26, 2016 · 0 comments

Comments

Projects
None yet
2 participants
@brasseld
Member

brasseld commented Oct 26, 2016

08:09:09.750 [vert.x-eventloop-thread-2] [] ERROR i.vertx.core.net.impl.ConnectionBase - java.io.IOException: Connection reset by peer
08:09:59.815 [vert.x-eventloop-thread-2] [] ERROR i.g.g.http.vertx.VertxHttpClient - 153ba70d-d52d-4f67-bba7-0dd52d8f6726 server proxying failed: Connection was closed
08:09:59.816 [vert.x-eventloop-thread-2] [] ERROR io.vertx.core.impl.ContextImpl - Unhandled exception
java.lang.IllegalStateException: Response has already been written
        at io.vertx.core.http.impl.HttpServerResponseImpl.checkWritten(HttpServerResponseImpl.java:559)
        at io.vertx.core.http.impl.HttpServerResponseImpl.write(HttpServerResponseImpl.java:582)
        at io.vertx.core.http.impl.HttpServerResponseImpl.write(HttpServerResponseImpl.java:273)
        at io.vertx.core.http.impl.HttpServerResponseImpl.write(HttpServerResponseImpl.java:54)
        at io.gravitee.gateway.standalone.vertx.VertxHttpServerResponse.write(VertxHttpServerResponse.java:74)
        at io.gravitee.gateway.standalone.vertx.VertxHttpServerResponse.write(VertxHttpServerResponse.java:27)
        at io.gravitee.gateway.policy.impl.StreamablePolicyChain.write(StreamablePolicyChain.java:94)
        at io.gravitee.gateway.http.vertx.VertxHttpClient.lambda$request$1(VertxHttpClient.java:99)
        at io.vertx.core.http.impl.HttpClientRequestBase.handleException(HttpClientRequestBase.java:110)
        at io.vertx.core.http.impl.HttpClientRequestImpl.handleException(HttpClientRequestImpl.java:50)
        at io.vertx.core.http.impl.ClientConnection.handleClosed(ClientConnection.java:410)
        at io.vertx.core.impl.ContextImpl.lambda$wrapTask$3(ContextImpl.java:357)
        at io.vertx.core.impl.ContextImpl.executeFromIO(ContextImpl.java:234)
        at io.vertx.core.net.impl.VertxHandler.channelInactive(VertxHandler.java:97)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:238)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:224)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:217)
        at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75)
        at io.netty.handler.timeout.IdleStateHandler.channelInactive(IdleStateHandler.java:257)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:238)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:224)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:217)
        at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelInactive(CombinedChannelDuplexHandler.java:410)
        at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:360)
        at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:325)
        at io.netty.handler.codec.http.HttpClientCodec$Decoder.channelInactive(HttpClientCodec.java:256)
        at io.netty.channel.CombinedChannelDuplexHandler.channelInactive(CombinedChannelDuplexHandler.java:213)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:238)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:224)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:217)
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1315)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:238)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:224)
        at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:887)
        at io.netty.channel.AbstractChannel$AbstractUnsafe$7.run(AbstractChannel.java:732)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:339)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:393)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:742)
        at java.lang.Thread.run(Thread.java:745)

According to me, we must not have this kind of exception in case of client exception.

@brasseld brasseld added the type: bug label Oct 26, 2016

@brasseld brasseld self-assigned this Oct 26, 2016

brasseld added a commit to gravitee-io/gravitee-gateway that referenced this issue Oct 27, 2016

@brasseld brasseld added this to the 1.0.1 milestone Oct 27, 2016

NicolasGeraud added a commit to gravitee-io/gravitee-gateway that referenced this issue Oct 27, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment