infinite "An established connection was aborted by the software in your host machine"

1,544 views
Skip to first unread message

Егор Голощапов

unread,
Jan 15, 2014, 4:15:44 AM1/15/14
to ve...@googlegroups.com
In the last 2.1M2 version I have this infinite exception:
                                                         java.io.IOException: An established connection was aborted by the software in your host machine
when I refresh page  (f5 button)
This exception can be handled setting the exceptionHandler when websocket starts. But it is infinite and never stops (even if there is no client anymore)

I noticed that this exception occures only when I'm using HTTPS (no exception when using HTTP)
And also noticed there is no such exception in 2.1M1.  
I think that this exception is very close to that: https://groups.google.com/forum/#!topic/vertx/RV7WgoMjmMk

To reproduce this exception it I created a very simple project using maven. To get this exception:
  1. Unzip attached small maven project
  2. Run DeployerTest in VerticleLauncher module (Launcher folder) - you should see "deployed" message in IDE console when webserver was deployed
  3. Using chrome go to https://localhost:8072/ .  You should see SockJS Echo example and chat. In chat first message should be [*] open "websocket" that indicates that connection was established (in chrome) and "socket connected" message in IDE console
  4. After that refresh the page (f5). Infinite exception will occur (shown below)
SEVERE: Unhandled exception
java.io.IOException: An established connection was aborted by the software in your host machine
at sun.nio.ch.SocketDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:51)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
at io.netty.buffer.PooledUnsafeDirectByteBuf.getBytes(PooledUnsafeDirectByteBuf.java:208)
at io.netty.buffer.PooledUnsafeDirectByteBuf.readBytes(PooledUnsafeDirectByteBuf.java:215)
at io.netty.channel.socket.nio.NioSocketChannel.doWriteBytes(NioSocketChannel.java:214)
at io.netty.channel.nio.AbstractNioByteChannel.doWrite(AbstractNioByteChannel.java:177)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:231)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:682)
at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:271)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:651)
at io.netty.channel.DefaultChannelPipeline$HeadHandler.flush(DefaultChannelPipeline.java:1038)
at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675)
at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656)
at io.netty.channel.ChannelOutboundHandlerAdapter.flush(ChannelOutboundHandlerAdapter.java:115)
at io.netty.channel.DefaultChannelHandlerContext.invokeFlush(DefaultChannelHandlerContext.java:675)
at io.netty.channel.DefaultChannelHandlerContext.flush(DefaultChannelHandlerContext.java:656)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:430)
at io.netty.handler.ssl.SslHandler.closeOutboundAndChannel(SslHandler.java:1022)
at io.netty.handler.ssl.SslHandler.close(SslHandler.java:397)
at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561)
at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546)
at io.netty.channel.ChannelOutboundHandlerAdapter.close(ChannelOutboundHandlerAdapter.java:71)
at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561)
at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546)
at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73)
at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561)
at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546)
at io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:73)
at io.netty.channel.DefaultChannelHandlerContext.invokeClose(DefaultChannelHandlerContext.java:561)
at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:546)
at io.netty.channel.DefaultChannelHandlerContext.close(DefaultChannelHandlerContext.java:424)
at io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:826)
at io.netty.channel.AbstractChannel.close(AbstractChannel.java:178)
at io.netty.channel.ChannelFutureListener$1.operationComplete(ChannelFutureListener.java:44)
at io.netty.channel.ChannelFutureListener$1.operationComplete(ChannelFutureListener.java:41)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:628)
at io.netty.util.concurrent.DefaultPromise.notifyListener(DefaultPromise.java:605)
at io.netty.util.concurrent.DefaultPromise.addListener(DefaultPromise.java:130)
at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:93)
at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:28)
at org.vertx.java.core.http.impl.DefaultHttpServer$ServerHandler.doMessageReceived(DefaultHttpServer.java:664)
at org.vertx.java.core.http.impl.DefaultHttpServer$ServerHandler.doMessageReceived(DefaultHttpServer.java:571)
at org.vertx.java.core.http.impl.VertxHttpHandler.channelRead(VertxHttpHandler.java:60)
at org.vertx.java.core.net.impl.VertxHandler.channelRead(VertxHandler.java:156)
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:153)
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:153)
at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:122)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:485)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:452)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:346)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
at java.lang.Thread.run(Thread.java:724)

OS: windows 7
browser: chrome


Any suggestions? Thanks!
EstablishedConnectionWasAborted.zip

Norman Maurer

unread,
Jan 15, 2014, 7:14:51 AM1/15/14
to ve...@googlegroups.com
Could you try with current master and see if you still see the problems? If so please open issue in our bugtracker with all the informations.

Thanks
Norman
--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
<EstablishedConnectionWasAborted.zip>

Егор Голощапов

unread,
Jan 15, 2014, 10:40:21 AM1/15/14
to ve...@googlegroups.com, norman...@googlemail.com
Norman, I can't figure out how to get jars from sources using grade. Is there a compiled version of master branch?

Thank you!

среда, 15 января 2014 г., 16:14:51 UTC+4 пользователь Norman Maurer написал:

Tim Fox

unread,
Jan 15, 2014, 10:42:46 AM1/15/14
to ve...@googlegroups.com
https://github.com/eclipse/vert.x/blob/master/BUILD_README.md

In summary:

1. Clone the repository:

git clone g...@github.com:eclipse/vert.x.git

2. cd vert.x

3. gradlew.bat dist

Norman Maurer

unread,
Jan 16, 2014, 1:34:09 AM1/16/14
to ve...@googlegroups.com
I was able to reproduce it with your code using vert.x 2.1M2 (yay).

The good thing is that it seems to be fixed with 2.1M3-SNAPSHOT here. Could you try to use 2.1M3-SNAPSHOT and let me know if you still see the problem.

Thanks!

Егор Голощапов

unread,
Jan 16, 2014, 8:53:59 AM1/16/14
to ve...@googlegroups.com
I have compiled master branch to get 2.1M3 version of vertx.
After that I tested my miniproject with that 2.1M3 vertx version.
There are no such exceptions there anymore!  
Thank you very much!  

2014/1/16 Norman Maurer <norman...@googlemail.com>

--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/LPp4qnrVLiY/unsubscribe.
To unsubscribe from this group and all of its topics, send an email to vertx+un...@googlegroups.com.

Norman Maurer

unread,
Jan 16, 2014, 8:54:48 AM1/16/14
to ve...@googlegroups.com
Thanks for the feedback!

-- 
Norman Maurer

Егор Голощапов

unread,
Jan 16, 2014, 8:57:55 AM1/16/14
to ve...@googlegroups.com
Norman, don't you know when 2.1M3 are going to be deployed in mavenrepository? 

Thanks!

2014/1/16 Егор Голощапов <golo...@gmail.com>
Reply all
Reply to author
Forward
0 new messages