Advertize the slave process died

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      When slave process is terminated an exception is logged in both slave log and build log. This is very confusing for users (especially when different exceptions can be thrown, see bellow).

      Register shutdown hook to notify channel counterparts that JVM is being turned off so Jenkins can act accordingly.

      JNLPLauncher:

      FATAL: java.io.EOFException
      hudson.remoting.RequestAbortedException: java.io.EOFException
      	at hudson.remoting.Request.abort(Request.java:295)
      	at hudson.remoting.Channel.terminate(Channel.java:814)
      	at org.jenkinsci.remoting.nio.NioChannelHub$3.run(NioChannelHub.java:616)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:111)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:745)
      	at ......remote call to jnlp(Native Method)
      	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1356)
      	at hudson.remoting.Request.call(Request.java:171)
      	at hudson.remoting.Channel.call(Channel.java:751)
      	at hudson.Launcher$RemoteLauncher.kill(Launcher.java:941)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:556)
      	at hudson.model.Run.execute(Run.java:1745)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      	at hudson.model.ResourceController.execute(ResourceController.java:89)
      	at hudson.model.Executor.run(Executor.java:240)
      Caused by: java.io.EOFException
      	at org.jenkinsci.remoting.nio.NioChannelHub$3.run(NioChannelHub.java:616)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:111)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:745)
      

      CommandLauncher:

      FATAL: java.io.IOException: Unexpected termination of the channel
      hudson.remoting.RequestAbortedException: java.io.IOException: Unexpected termination of the channel
      	at hudson.remoting.Request.abort(Request.java:295)
      	at hudson.remoting.Channel.terminate(Channel.java:814)
      	at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:69)
      	at ......remote call to jnlp(Native Method)
      	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1356)
      	at hudson.remoting.Request.call(Request.java:171)
      	at hudson.remoting.Channel.call(Channel.java:751)
      	at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:173)
      	at com.sun.proxy.$Proxy47.join(Unknown Source)
      	at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:979)
      	at hudson.Launcher$ProcStarter.join(Launcher.java:388)
      	at hudson.tasks.Maven.perform(Maven.java:328)
      	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770)
      	at hudson.model.Build$BuildExecution.build(Build.java:199)
      	at hudson.model.Build$BuildExecution.doRun(Build.java:160)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:533)
      	at hudson.model.Run.execute(Run.java:1745)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      	at hudson.model.ResourceController.execute(ResourceController.java:89)
      	at hudson.model.Executor.run(Executor.java:240)
      Caused by: java.io.IOException: Unexpected termination of the channel
      	at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:50)
      Caused by: java.io.EOFException
      	at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2325)
      	at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2794)
      	at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:801)
      	at java.io.ObjectInputStream.<init>(ObjectInputStream.java:299)
      	at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:40)
      	at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34)
      	at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)
      

            Assignee:
            Unassigned
            Reporter:
            Oliver Gondža
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: