This issues has been occurring with increasing frequency. The connection is always lost at the end of a Windows Batch Script build step execution. I've attached all the information that I believe is relevant. If there is additional logging I should enable or other information that is needed, please let me know.

      Both the slave and master in this case are physical windows 7 machines. The server has 12 GB of ram and runs Jenkins with a java executable with the following arguments:

      <arguments>-Xrs -server -Xincgc -Xmx4096M -Xms4096M -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>
      Logs from the build:

      FATAL: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
      hudson.remoting.RequestAbortedException: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
      at hudson.remoting.RequestAbortedException.wrapForRethrow(RequestAbortedException.java:41)
      at hudson.remoting.RequestAbortedException.wrapForRethrow(RequestAbortedException.java:34)
      at hudson.remoting.Request.call(Request.java:174)
      at hudson.remoting.Channel.call(Channel.java:722)
      at hudson.Launcher$RemoteLauncher.kill(Launcher.java:887)
      at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:588)
      at hudson.model.Run.execute(Run.java:1670)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:231)
      Caused by: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
      at hudson.remoting.Request.abort(Request.java:299)
      at hudson.remoting.Channel.terminate(Channel.java:782)
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:69)
      Caused by: java.net.SocketException: Connection reset
      at java.net.SocketInputStream.read(SocketInputStream.java:196)
      at java.net.SocketInputStream.read(SocketInputStream.java:122)
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
      at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
      at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:77)
      at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2293)
      at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2586)
      at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2596)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1318)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at hudson.remoting.Command.readFrom(Command.java:92)
      at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:71)
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)

      Logs from jenkins.err.log:

      SEVERE: I/O error in channel <NODENAME>
      java.net.SocketException: Connection reset
      at java.net.SocketInputStream.read(SocketInputStream.java:196)
      at java.net.SocketInputStream.read(SocketInputStream.java:122)
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
      at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
      at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:77)
      at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2293)
      at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2586)
      at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2596)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1318)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at hudson.remoting.Command.readFrom(Command.java:92)
      at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:71)
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)

      May 04, 2014 1:32:38 PM jenkins.slaves.JnlpSlaveAgentProtocol$Handler$1 onClosed
      WARNING: Channel reader thread: <NODENAME> for + <NODENAME> terminated
      java.net.SocketException: Connection reset
      at java.net.SocketInputStream.read(SocketInputStream.java:196)
      at java.net.SocketInputStream.read(SocketInputStream.java:122)
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
      at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
      at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:77)
      at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2293)
      at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2586)
      at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2596)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1318)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at hudson.remoting.Command.readFrom(Command.java:92)
      at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:71)
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)

      May 04, 2014 1:32:48 PM hudson.model.Run execute
      INFO: TestReport #691 main build action completed: SUCCESS
      May 04, 2014 1:33:04 PM hudson.model.Run execute

          [JENKINS-22864] JVM Failure:Windows Slave Connection Reset

          Oleg Nenashev added a comment -

          The issue has been caused by the access violation in the Finalizer thread.

          In my case it appears on 64-bit Win7 nodes with 1.7u40 and 1.7u51, but the issue seems to be quite old

          Oleg Nenashev added a comment - The issue has been caused by the access violation in the Finalizer thread. In my case it appears on 64-bit Win7 nodes with 1.7u40 and 1.7u51, but the issue seems to be quite old

          Oleg Nenashev added a comment -

          JENKINS-6129 and JENKINS-10582 seem to be the duplicate issues.

          However, any analysis attempt stops on the "lets submit another dump to Oracle" and "only Minecraft has the same issue"

          The issue could be caused by calling improper JNI methods from finalizer handlers, but seems that the issue appears in the default finalizer.

          Oleg Nenashev added a comment - JENKINS-6129 and JENKINS-10582 seem to be the duplicate issues. However, any analysis attempt stops on the "lets submit another dump to Oracle" and "only Minecraft has the same issue" The issue could be caused by calling improper JNI methods from finalizer handlers, but seems that the issue appears in the default finalizer.

          Stuart Rowe added a comment -

          Any suggestions on how I can mitigate the issue?

          Stuart Rowe added a comment - Any suggestions on how I can mitigate the issue?

          ikedam added a comment -

          Looks same to JENKINS-10582.
          This should be an issue of Java Native Access or usage of that in Jenkins.

          ikedam added a comment - Looks same to JENKINS-10582 . This should be an issue of Java Native Access or usage of that in Jenkins.

            kohsuke Kohsuke Kawaguchi
            stuartrowe Stuart Rowe
            Votes:
            4 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: