Description of problem: When running EAP 6.2.0 and a client ton windows JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host gets thrown when the jmx connection is closed. How reproducible: Very Steps to Reproduce: 1. Run EAP 6.2.0 on Windows 2. Connect via jmx to get some info like @Test public void directMBean() throws Exception { ObjectName objectName = new ObjectName("java.lang:type=Memory"); Map<String, Object> env = new HashMap<String, Object>(); String[] credentials = new String[] { MONITORING_USER, MONITORING_PASSWORD }; env.put("jmx.remote.credentials", credentials); String connectionUrlString = JMX_REMOTING_URL; JMXServiceURL url = new JMXServiceURL(connectionUrlString); JMXConnector jmxc = JMXConnectorFactory.connect(url, env); jmxc.connect(); Object value = jmxc.getMBeanServerConnection().getAttribute(objectName, "HeapMemoryUsage"); log.info("HeapMemoryUsage=" + value); jmxc.close(); } or use example in https://access.redhat.com/site/solutions/125473 3. Close the connection and observe the error Actual results: Everyhting else works apart from the IO exception being thrown in the server.log file on close only: 00:01:32,914 TRACE [org.jboss.remoting.remote] (Remoting "WIN-DUG553FR30A_100" read-1) Received remote close request on Connection handler for Remoting connection 3a14c2e8 to /aa.bb.cc.dd:58033 00:01:32,915 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" read-1) Sent message java.nio.HeapByteBuffer[pos=1 lim=1 cap=8192] (direct) 00:01:32,916 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" read-1) Shut down writes on channel (direct) 00:01:32,916 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" read-1) Flushed channel (direct) 00:01:32,916 TRACE [org.jboss.remoting.remote] (Remoting "WIN-DUG553FR30A_100" read-1) Sent close request on Connection handler for Remoting connection 3a14c2e8 to /aa.bb.cc.dd:58033 00:01:32,917 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" read-1) Shut down writes on channel 00:01:32,918 TRACE [org.jboss.remoting.remote] (Remoting "WIN-DUG553FR30A_100" read-1) Received connection end-of-stream 00:01:32,930 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" read-1) Shut down writes on channel 00:01:32,939 TRACE [org.jboss.remoting.resource] (Remoting "WIN-DUG553FR30A_100" read-1) Closing Connection handler for Remoting connection 3a14c2e8 to null asynchronously 00:01:32,940 TRACE [org.jboss.remoting.resource] (Remoting "WIN-DUG553FR30A_100" read-1) Completed close of Connection handler for Remoting connection 3a14c2e8 to null 00:01:32,941 TRACE [org.jboss.remoting.resource] (Remoting "WIN-DUG553FR30A_100" read-1) Closing Remoting connection <426d942b> asynchronously 00:01:32,941 TRACE [org.jboss.remoting.resource] (Remoting "WIN-DUG553FR30A_100" read-1) Closing Connection handler for Remoting connection 3a14c2e8 to null asynchronously 00:01:32,942 TRACE [org.jboss.remoting.resource] (Remoting "WIN-DUG553FR30A_100" read-1) Completed close of Remoting connection <426d942b> 00:01:32,943 TRACE [org.jboss.remoting.endpoint] (Remoting "WIN-DUG553FR30A_100" read-1) Resource closed count 00000001 of endpoint "WIN-DUG553FR30A_100" <1ba1110d> (closed Remoting connection <426d942b>) 00:01:32,940 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100" task-1) Shut down writes on channel 00:01:33,324 TRACE [org.jboss.remoting.remote.connection] (Remoting "WIN-DUG553FR30A_100:MANAGEMENT" read-1) Connection error detail: java.io.IOException: An existing connection was forcibly closed by the remote host at sun.nio.ch.SocketDispatcher.read0(Native Method) [rt.jar:1.7.0_45] at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43) [rt.jar:1.7.0_45] at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) [rt.jar:1.7.0_45] at sun.nio.ch.IOUtil.read(IOUtil.java:197) [rt.jar:1.7.0_45] at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:379) [rt.jar:1.7.0_45] at org.xnio.nio.AbstractNioStreamChannel.read(AbstractNioStreamChannel.java:249) at org.xnio.channels.FramedMessageChannel.receive(FramedMessageChannel.java:87) [xnio-api-3.0.7.GA-redhat-1.jar:3.0.7.GA-redhat-1] at org.jboss.remoting3.remote.RemoteReadListener.handleEvent(RemoteReadListener.java:72) [jboss-remoting-3.2.18.GA-redhat-1.jar:3.2.18.GA-redhat-1] at org.jboss.remoting3.remote.RemoteReadListener.handleEvent(RemoteReadListener.java:45) [jboss-remoting-3.2.18.GA-redhat-1.jar:3.2.18.GA-redhat-1] at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72) [xnio-api-3.0.7.GA-redhat-1.jar:3.0.7.GA-redhat-1] at org.xnio.channels.TranslatingSuspendableChannel.handleReadable(TranslatingSuspendableChannel.java:189) [xnio-api-3.0.7.GA-redhat-1.jar:3.0.7.GA-redhat-1] at org.xnio.channels.TranslatingSuspendableChannel$1.handleEvent(TranslatingSuspendableChannel.java:103) [xnio-api-3.0.7.GA-redhat-1.jar:3.0.7.GA-redhat-1] at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72) [xnio-api-3.0.7.GA-redhat-1.jar:3.0.7.GA-redhat-1] at org.xnio.nio.NioHandle.run(NioHandle.java:90) at org.xnio.nio.WorkerThread.run(WorkerThread.java:187) Expected results: No Error to be thrown Additional info: This happens on Windows only. This did not happen in EAP 5.
When run on Windows operating system, Windows appears to forcibly close connections which results in the ERROR logged below, though the issue is not harmful, so changing it to DEBUG to prevent users from being concerned there is a problem. ERROR ... JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
Fixed by upgrade https://github.com/jbossas/jboss-eap/pull/1205 https://bugzilla.redhat.com/show_bug.cgi?id=1080576
Verified.
Removed programlisting tag in Doc Text to ticks (`) to fix Bug 1096865