Details
-
Task
-
Resolution: Works as Designed
-
Major - P3
-
None
-
3.4.2
-
None
-
Unix, application built on Vertx3 + Netty 4.1.8.Final + MongoDBAtlas v3.4.4
Description
An issue pretty much like JAVA-1931.
After a few operations on the database, idle time in between, I receive the following exception:
2017-06-09 10:37:34 com.mongodb.diagnostics.logging.JULLogger log [WARNING] Got socket exception on connection [connectionId{localValue:5, serverValue:366843}] to clusterxxx.mongodb.net:27017. All connections to clusterxxx.mongodb.net:27017 will be closed.
|
2017-06-09 10:37:34 com.mongodb.diagnostics.logging.JULLogger log [INFO] Closed connection [connectionId{localValue:5, serverValue:366843}] to clusterxxx.mongodb.net:27017 because there was a socket exception raised on another connection from this pool.
|
com.mongodb.MongoSocketWriteException: Exception sending message
|
at com.mongodb.connection.InternalStreamConnection.translateWriteException(InternalStreamConnection.java:465)
|
at com.mongodb.connection.InternalStreamConnection.access$1000(InternalStreamConnection.java:66)
|
at com.mongodb.connection.InternalStreamConnection$2.failed(InternalStreamConnection.java:323)
|
at com.mongodb.connection.netty.NettyStream$3.operationComplete(NettyStream.java:188)
|
at com.mongodb.connection.netty.NettyStream$3.operationComplete(NettyStream.java:184)
|
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:507)
|
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:481)
|
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:420)
|
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:122)
|
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetFailure(AbstractChannel.java:906)
|
at io.netty.channel.AbstractChannel$AbstractUnsafe.write(AbstractChannel.java:791)
|
at io.netty.channel.DefaultChannelPipeline$HeadContext.write(DefaultChannelPipeline.java:1291)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:739)
|
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:731)
|
at io.netty.channel.AbstractChannelHandlerContext.access$1900(AbstractChannelHandlerContext.java:38)
|
at io.netty.channel.AbstractChannelHandlerContext$AbstractWriteTask.write(AbstractChannelHandlerContext.java:1090)
|
at io.netty.channel.AbstractChannelHandlerContext$WriteAndFlushTask.write(AbstractChannelHandlerContext.java:1137)
|
at io.netty.channel.AbstractChannelHandlerContext$AbstractWriteTask.run(AbstractChannelHandlerContext.java:1079)
|
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
|
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403)
|
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:445)
|
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
|
at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
|
at java.lang.Thread.run(Thread.java:745)
|
Caused by: java.nio.channels.ClosedChannelException
|
at io.netty.channel.AbstractChannel$AbstractUnsafe.write(...)(Unknown Source)
|
2017-06-09 10:37:34 com.mongodb.diagnostics.logging.JULLogger log [INFO] Discovered replica set primary clusterxxx.mongodb.net:27017
|
As in JAVA-1931, I'm calling System.setProperty("org.mongodb.async.type", "netty")
I'm using Vertx3 (Netty 4.1.8.Final) to connect to a MongoDBAtlas v3.4.4 and tried with different mongo-driver-async/core/bson versions: 3.4.1, 3.4.2 and 3.5.0 without any success.