Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-29120

Slave Machine not reachable and offline

    XMLWordPrintable

Details

    Description

      Hi Team,

      I have upgraded Jenkins to 1.6 and my slave machine went offline. Looking at logs.

      As slave.jar is meant to be launched by Jenkins typically through a remote shell like ssh/rsh. It does that step. our Linux server have dump of java not installed traditionally on the server but we use different JDK version on purpose by creating link to dump.

      On launching slave machine it tries to find the java on linux machine if not found installs automatically using script jdk.sh. The version it installs is jdk1.6 and also i do not have an option to set JDK later than 1.6 in Tools section of configuration.

      After installation i get below error not sure related to jdk or something else. I cannot install later version of JDK as it overrides everything again.

      Could you please let me know what is causing this issue??

      Is it possible that its because of this http://jenkins-ci.org/content/good-bye-java6

      [06/29/15 15:48:37] [SSH] Checking java version of /home/build/Jenkins/jdk/bin/java
      [06/29/15 15:48:37] [SSH] /home/build/Jenkins/jdk/bin/java -version returned 1.6.0_45.
      [06/29/15 15:48:37] [SSH] Starting sftp client.
      [06/29/15 15:48:37] [SSH] Copying latest slave.jar...
      [06/29/15 15:48:39] [SSH] Copied 478,472 bytes.
      Expanded the channel window size to 4MB
      [06/29/15 15:48:39] [SSH] Starting slave process: cd "/home/build/Jenkins" && /home/build/Jenkins/jdk/bin/java -jar slave.jar
      <===[JENKINS REMOTING CAPACITY]===>channel started
      hudson.util.IOException2: Slave JVM has not reported exit code. Is it still running?
      at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:953)
      at hudson.plugins.sshslaves.SSHLauncher.access$400(SSHLauncher.java:133)
      at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:711)
      at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:696)
      at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      at java.util.concurrent.FutureTask.run(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)
      Caused by: java.io.IOException: Remote call on Linux - appsrv2 failed
      at hudson.remoting.Channel.call(Channel.java:761)
      at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:498)
      at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:371)
      at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:945)
      ... 8 more
      Caused by: java.lang.ClassFormatError: Failed to load hudson.slaves.SlaveComputer$SlaveVersion
      at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:325)
      at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:237)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:249)
      at hudson.remoting.MultiClassLoaderSerializer$Input.resolveClass(MultiClassLoaderSerializer.java:113)
      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1589)
      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1494)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1748)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
      at hudson.remoting.UserRequest.deserialize(UserRequest.java:185)
      at hudson.remoting.UserRequest.perform(UserRequest.java:99)
      at hudson.remoting.UserRequest.perform(UserRequest.java:49)
      at hudson.remoting.Request$2.run(Request.java:325)
      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.con

      Attachments

        Activity

          rajubvs Raju Bvs added a comment - - edited

          I am also getting the same problem.

          Is there any solution for this issue??

          <===[JENKINS REMOTING CAPACITY]===>channel started
          hudson.util.IOException2: Slave JVM has not reported exit code. Is it still running?
          at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:953)
          at hudson.plugins.sshslaves.SSHLauncher.access$400(SSHLauncher.java:133)
          at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:711)
          at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:696)
          at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          at java.util.concurrent.FutureTask.run(Unknown Source)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          at java.lang.Thread.run(Unknown Source)
          Caused by: java.io.IOException: Remote call on Linux - appsrv2 failed
          at hudson.remoting.Channel.call(Channel.java:761)
          at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:498)
          at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:371)
          at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:945)
          ... 8 more
          Caused by: java.lang.ClassFormatError: Failed to load hudson.slaves.SlaveComputer$SlaveVersion
          at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:325)
          at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:237)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
          at java.lang.Class.forName0(Native Method)
          at java.lang.Class.forName(Class.java:249)
          at hudson.remoting.MultiClassLoaderSerializer$Input.resolveClass(MultiClassLoaderSerializer.java:113)
          at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1589)
          at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1494)
          at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1748)
          at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327)
          at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
          at hudson.remoting.UserRequest.deserialize(UserRequest.java:185)
          at hudson.remoting.UserRequest.perform(UserRequest.java:99)
          at hudson.remoting.UserRequest.perform(UserRequest.java:49)
          at hudson.remoting.Request$2.run(Request.java:325)
          at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
          at java.util.con

          rajubvs Raju Bvs added a comment - - edited I am also getting the same problem. Is there any solution for this issue?? <=== [JENKINS REMOTING CAPACITY] ===>channel started hudson.util.IOException2: Slave JVM has not reported exit code. Is it still running? at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:953) at hudson.plugins.sshslaves.SSHLauncher.access$400(SSHLauncher.java:133) at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:711) at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:696) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.io.IOException: Remote call on Linux - appsrv2 failed at hudson.remoting.Channel.call(Channel.java:761) at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:498) at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:371) at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:945) ... 8 more Caused by: java.lang.ClassFormatError: Failed to load hudson.slaves.SlaveComputer$SlaveVersion at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:325) at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:237) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:249) at hudson.remoting.MultiClassLoaderSerializer$Input.resolveClass(MultiClassLoaderSerializer.java:113) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1589) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1494) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1748) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349) at hudson.remoting.UserRequest.deserialize(UserRequest.java:185) at hudson.remoting.UserRequest.perform(UserRequest.java:99) at hudson.remoting.UserRequest.perform(UserRequest.java:49) at hudson.remoting.Request$2.run(Request.java:325) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.con
          bballi Bob Balli added a comment -

          Solution is get java 1.7 and above on slave machine

          bballi Bob Balli added a comment - Solution is get java 1.7 and above on slave machine
          oleg_nenashev Oleg Nenashev added a comment -

          Bulk issue update: The plugin connectivity is still unstable from what I see in this and other reports. Probably the recent patches in 1.24-1.25 caused some extra instability by getting rid of interlocks between agent connection and termination logic. Apparently it impacts some reconnection scenarios due to the race conditions.

          Unfortunately I do not have capacity to work on the plugin in medium-term. So for now I am unassigning issues from myself. ifernandezcalvo was very kind to take ownership of the plugin and to handle some workload in it. Probably he will have some capacity to review the backlog I was unable to triage.

          oleg_nenashev Oleg Nenashev added a comment - Bulk issue update: The plugin connectivity is still unstable from what I see in this and other reports. Probably the recent patches in 1.24-1.25 caused some extra instability by getting rid of interlocks between agent connection and termination logic. Apparently it impacts some reconnection scenarios due to the race conditions. Unfortunately I do not have capacity to work on the plugin in medium-term. So for now I am unassigning issues from myself. ifernandezcalvo was very kind to take ownership of the plugin and to handle some workload in it. Probably he will have some capacity to review the backlog I was unable to triage.

          Upgrade the JDK to 1.7 resolves the issue

          ifernandezcalvo Ivan Fernandez Calvo added a comment - Upgrade the JDK to 1.7 resolves the issue

          People

            ifernandezcalvo Ivan Fernandez Calvo
            bballi Bob Balli
            Votes:
            2 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: