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

Bringing slaves online after running a build does not re-register gearman jobs

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • gearman-plugin
    • None
    • ubuntu precise
      python gear server 0.5.6
      jenkins 1.565.3
      gearman plugin 0.1.1

      Gearman client requests to offline slave on a job request causes gearman jobs to unregister however the jobs never re-register so no other requests will get processed. The only way to get the job re-registered is if you restart the gearman plugin service in the Jenkins global settings. This only happens when there are multiple executors setup on a node.

      Steps to repro:
      1. setup a jenkins job (do not set the label and set to run concurrently)
      2. setup a slave with multiple executors (do not setup a label)
      3. install gearman-plugin
      4. start/connect the gearman-plugin service to a gear server. make sure jobs have been registered.
      5. use the [gearman-plugin-client https://github.com/zaro0508/gearman-plugin-client] to request a job with OFFLINE_NODE_WHEN_COMPLETE=true and iterations=number_of_executors

      i.e.
      gear_client.py --function=build:myjob --iterations=2 --params='

      {"OFFLINE_NODE_WHEN_COMPLETE":"true"}

      '

      6. gearman jobs get unregistered as expected.
      7. bring the node back online.

      gearman jobs should re-registered but it does not therefore no other job requested get serviced.

            zaro Khai Do
            zaro Khai Do
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: