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

Gearman plugin should not decide on which node a build should be executed

    • Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Blocker Blocker
    • gearman-plugin
    • None

      Today when gearman schedules a build gearman it decides on which node a build should be executed instead of relying on Jenkins to decide the node.
      The Jenkins node balancer seems to be executed but the node is already predecided by gearman.

      This makes the user not being able to use the default Jenkins Load Balancer.
      Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified that the following plugins does not work properly when gearman trigger builds:
      Scoring Load Balancer Plugin
      Least Load Plugin
      Throttle Concurrent Builds Plugin

      Example logs when using Scoring Load Balancer Plugin

      Scoring for ... JobTriggeredByJenkinsOnGenericLabel:
      generic-JENKINS06: 62
      generic-JENKINS12: 62
      generic-JENKINS15: 27
      generic-JENKINS13: 5
      generic-JENKINS10: 5
      generic-JENKINS09: 5
      generic-JENKINS14: 5
      generic-JENKINS07: -50
      generic-JENKINS16: -83

      Scoring for ... JobTriggeredByGearmanOnGenericLabel:
      generic-JENKINS09: 5

      NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.

          [JENKINS-28936] Gearman plugin should not decide on which node a build should be executed

          Christian Bremer created issue -
          Christian Bremer made changes -
          Summary Original: Gearman plugin should use Jenkins LoadBalancer when scheduling builds New: Gearman plugin should not decide on which node a build should be executed
          Christian Bremer made changes -
          Description Original: Today when gearman schedules a build gearman itself decides on which node a build should be executed instead of relying on Jenkins LoadBalancer to decide the node.
          The node balancer on Jenkins seems to be executed but the node is already decided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified it while using these plugins.
          https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin
          https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin
          https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin

          Example logs when using https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin

          Scoring for ... [JobTriggeredBy*JenkinsOn*GenericLabel]:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... [JobTriggeredBy*Gearman*OnGenericLabel]:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          New: Today when gearman schedules a build gearman itself decides on which node a build should be executed instead of relying on Jenkins LoadBalancer to decide the node.
          The node balancer on Jenkins seems to be executed but the node is already decided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified it while using these plugins.
          [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]
          [Least Load Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin]
          [Throttle Concurrent Builds Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin]

          Example logs when using [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]

          Scoring for ... JobTriggeredBy*JenkinsOn*GenericLabel:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... JobTriggeredBy*Gearman*OnGenericLabel:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          Christian Bremer made changes -
          Description Original: Today when gearman schedules a build gearman itself decides on which node a build should be executed instead of relying on Jenkins LoadBalancer to decide the node.
          The node balancer on Jenkins seems to be executed but the node is already decided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified it while using these plugins.
          [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]
          [Least Load Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin]
          [Throttle Concurrent Builds Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin]

          Example logs when using [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]

          Scoring for ... JobTriggeredBy*JenkinsOn*GenericLabel:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... JobTriggeredBy*Gearman*OnGenericLabel:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          New: Today when gearman schedules a build gearman itself decides on which node a build should be executed instead of relying on Jenkins LoadBalancer to decide the node.
          The node balancer on Jenkins seems to be executed but the node is already decided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified it while using these plugins.
          [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]
          [Least Load Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin]
          [Throttle Concurrent Builds Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin]

          Example logs when using [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]

          Scoring for ... JobTriggeredByJenkinsOnGenericLabel:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... JobTriggeredByGearmanOnGenericLabel:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          Christian Bremer made changes -
          Assignee New: Christian Bremer [ ki82 ]
          Christian Bremer made changes -
          Description Original: Today when gearman schedules a build gearman itself decides on which node a build should be executed instead of relying on Jenkins LoadBalancer to decide the node.
          The node balancer on Jenkins seems to be executed but the node is already decided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified it while using these plugins.
          [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]
          [Least Load Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin]
          [Throttle Concurrent Builds Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin]

          Example logs when using [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]

          Scoring for ... JobTriggeredByJenkinsOnGenericLabel:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... JobTriggeredByGearmanOnGenericLabel:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          New: Today when gearman schedules a build gearman it decides on which node a build should be executed instead of relying on Jenkins to decide the node.
          The Jenkins node balancer seems to be executed but the node is already predecided by gearman.

          This makes the user not being able to use the default Jenkins Load Balancer.
          Also if you use Jenkins plugins that affects scheduling they do not work properly since gearman has already decided on which node. I have verified that the following plugins does not work properly when gearman trigger builds:
          [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]
          [Least Load Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Least+Load+Plugin]
          [Throttle Concurrent Builds Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Throttle+Concurrent+Builds+Plugin]

          Example logs when using [Scoring Load Balancer Plugin|https://wiki.jenkins-ci.org/display/JENKINS/Scoring+Load+Balancer+plugin]

          Scoring for ... JobTriggeredByJenkinsOnGenericLabel:
           generic-JENKINS06: 62
           generic-JENKINS12: 62
           generic-JENKINS15: 27
           generic-JENKINS13: 5
           generic-JENKINS10: 5
           generic-JENKINS09: 5
           generic-JENKINS14: 5
           generic-JENKINS07: -50
           generic-JENKINS16: -83

          Scoring for ... JobTriggeredByGearmanOnGenericLabel:
           generic-JENKINS09: 5

          NOTE: These logs shows that the Scoring Load Balancer gets executed but instead of evaluating which nodes in the label group to choose it only has the option to evaluate the node that gearman has choosen.
          Christian Bremer made changes -
          Assignee Original: Christian Bremer [ ki82 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 163800 ] New: JNJira + In-Review [ 181380 ]

            Unassigned Unassigned
            ki82 Christian Bremer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: