• Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Critical Critical
    • remoting
    • None
    • Platform: All, OS: All

      Failing to use the matching slave.jar causes many strange errors that are hard
      to diagnose, such as
      http://www.nabble.com/Some-problems-with-master-slave-tf3560443.html

      It would be desirable for Hudson to check the version of the slave and report an
      appropriate error.

          [JENKINS-453] Check version mismatch of slave and master

          candrews added a comment -
              • Issue 2824 has been marked as a duplicate of this issue. ***

          candrews added a comment - Issue 2824 has been marked as a duplicate of this issue. ***

          candrews added a comment -

          CC'ing myself. The obscure errors caused by this issue are awfully annoying.

          candrews added a comment - CC'ing myself. The obscure errors caused by this issue are awfully annoying.

          Alan Harder added a comment -
              • Issue 4066 has been marked as a duplicate of this issue. ***

          Alan Harder added a comment - Issue 4066 has been marked as a duplicate of this issue. ***

          Alan Harder added a comment -

          I made a start in this direction.. so far it just logs the slave.jar version#
          when the slave starts.

          Code changed in hudson
          User: : mindless
          Path:
          trunk/hudson/main/core/src/main/java/hudson/slaves/SlaveComputer.java
          trunk/hudson/main/remoting/pom.xml
          trunk/hudson/main/remoting/src/main/java/hudson/remoting/Launcher.java
          http://fisheye4.cenqua.com/changelog/hudson/?cs=23750
          Log:
          JENKINS-4066 Add version# in slave.jar and report this in log when a node is
          launched.

          Alan Harder added a comment - I made a start in this direction.. so far it just logs the slave.jar version# when the slave starts. Code changed in hudson User: : mindless Path: trunk/hudson/main/core/src/main/java/hudson/slaves/SlaveComputer.java trunk/hudson/main/remoting/pom.xml trunk/hudson/main/remoting/src/main/java/hudson/remoting/Launcher.java http://fisheye4.cenqua.com/changelog/hudson/?cs=23750 Log: JENKINS-4066 Add version# in slave.jar and report this in log when a node is launched.

          Ulli Hafner added a comment -

          Wouldn't it be possible to auto-update the slave.jar file somehow?

          Ulli Hafner added a comment - Wouldn't it be possible to auto-update the slave.jar file somehow?

          Alan Harder added a comment -

          Depends how you setup your slaves.. I believe ssh-slaves plugin does auto-update the jar.

          Alan Harder added a comment - Depends how you setup your slaves.. I believe ssh-slaves plugin does auto-update the jar.

          kutzi added a comment -

          I wonder if it would make sense to reject to connect the slave if the versions don't match.
          Maybe better than the subtle errors which might come up later because of the mismatch.

          kutzi added a comment - I wonder if it would make sense to reject to connect the slave if the versions don't match. Maybe better than the subtle errors which might come up later because of the mismatch.

          kutzi added a comment -

          I've opened a pull request with a potential fix in the hope that this can finally can be resolved
          https://github.com/jenkinsci/jenkins/pull/220

          kutzi added a comment - I've opened a pull request with a potential fix in the hope that this can finally can be resolved https://github.com/jenkinsci/jenkins/pull/220

          bap added a comment -

          (add my comment to a more appropriate location - copy of comment on pull 220)

          Could Core Version be added to the table at /computer?
          Any slave with core version != master would display in red.
          A configuration option or system property could be used to enable mismatched slaves to be take offline (like when the slave disk space is low)

          bap added a comment - (add my comment to a more appropriate location - copy of comment on pull 220) Could Core Version be added to the table at /computer? Any slave with core version != master would display in red. A configuration option or system property could be used to enable mismatched slaves to be take offline (like when the slave disk space is low)

          Oleg Nenashev added a comment -

          Oleg Nenashev added a comment - There is a plugin for the case: https://wiki.jenkins-ci.org/display/JENKINS/VersionColumn+Plugin

            Unassigned Unassigned
            kohsuke Kohsuke Kawaguchi
            Votes:
            7 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: