Jenkins not executing jobs (pending - waiting for next executor)

Jenkins

Jenkins Problem Overview


Jenkins won't execute any jobs. Having viewed this question, I have disabled all slave nodes but a simple job won't even run on the Master node.

What is wrong?

Jenkins Solutions


Solution 1 - Jenkins

The Jenkins admin console can run, even with the Master node offline. This can happen when Jenkins runs out of disk space.

To confirm, do the following (with thanks to geekride - jenkins-pending-waiting-for-next-available-executor):

  • go to Jenkins -> Manage Jenkins -> Manage Nodes
  • examine the "master" node to see if it is offline. It may be reporting that the master node is out of disk space.

Solution 2 - Jenkins

  • go to Jenkins -> Manage Jenkins -> Manage Nodes
  • examine the "master" node.(Click on configure icon)

In my case No of executors was set to 0. Increased it and issue got fixed.

Solution 3 - Jenkins

In my case, I had the following set in my JenkinsFile

node('node'){ ... }

There was no node called 'node', only master (the value had been left in there after following some basic tutorials). Changing the value to 'master' got the build working.

Solution 4 - Jenkins

I ran into a similar problem because my master was set to "Leave this machine for tied jobs only." So, even though I disabled the Slave, Jenkins kept on bypassing the Master, looking for something else.

Go to Jenkins --> Manage Jenkins --> Manage Nodes, and click on the configure button of your master node (looks like a screwdriver and a wrench). Check the Usage and make sure it's on "Utilize this slave as much as possible."

Solution 5 - Jenkins

In my case it was caused by number of executors (I had 1) and running Jenkins Job (Project) from Pipeline (my pipeline script started other Job in Jenkins). It caused deadlock - my pipeline held executor and was waiting for its job, but the job was waiting for free executor.

The solution may be increasing of # of executors in Jenkins -> Manage Jenkins -> Manage Nodes -> Configure (icon on required node).

Solution 6 - Jenkins

I'm a little late to the game, but this may help others.

In my case my jenkins master has a shared external resource, which is allocated to jenkins jobs by the external-resource-dispatcher-plugin. Due to bug JENKINS-19439 in the plugin (which is in beta), I found that my resource had been locked by a previous job, but wasn't unlocked when that previous job was cancelled.

To find out if a resource is currently in the locked state, navigate to the affected jenkins node, Jenkins -> Manage Jenkins -> Manage Nodes -> master

You should see the current state of any external resources. If any are unexpectedly locked this may be the reason why jobs are waiting for an executor.

I couldn't find any details of how to manually resolve this issue.
Restarting jenkins didn't resolve the problem.
In the end I went with the brutal approach:

  • Remove the external resource
    (see Jenkins -> Manage Jenkins -> Manage Nodes -> master -> configure)

  • Restart jenkins

  • Re-create the external resource

Solution 7 - Jenkins

In my case, I noticed this behavior when the box was out of memory (RAM) I went to Jenkins -> Manage Jenkins -> Manage Nodes and found an out of memory exception. I just freed up some memory on the machine and the jobs started to go into the executors.

Solution 8 - Jenkins

In my case, I had just installed the "Authorize Project" plugin and incorrectly setup the strategy in "Manage Jenkins -> Configure Global Security -> Access Control for Builds" as "Run as anonymous". So 'anonymous' had no rights to execute the job.

Setting the first strategy as "Run as User who Triggered Build" unlocked the queued jobs.

Solution 9 - Jenkins

Short answer: Kill all the jobs which are running on the master.

In my case there were 3 jobs hung on the master for more than 10 days which were unnoticed. We usually do not run any jobs directly on the master, everything is run on slaves. I killed these 3 jobs which were hung, automatically the executors on the slave started picking up jobs.

Point to note that even though we have 8 slaves only 1 slave was in this affected state.

[EDIT] We found the answer to why only one slave was in this affected state. When a Jenkins slave goes down, all the pending jobs automatically get transferred over to the master. All the 3 hung jobs which I killed were from this slave, so its likely a connection issue between the master and this particular slave.

Solution 10 - Jenkins

For me below solution worked.

Jenkins --> Manage Jenkins --> Manage Nodes --> master -> configure --> Node properties --> Restrict Jobs execution at node - is enabled and given access to specific users. I have given access myself and then job started to run.

If Restrict Jobs execution at node is enabled scheduled tasks cannot run.

Solution 11 - Jenkins

In my case it is similar to @Michael Easter: I got a problem in a job due to lack of disk space. I cleared some space, restarted Jenkins but still the problem persisted.

The solution was to go to Jenkins -> Manage Jenkins -> Manage Nodes and just Click on the button to update the status.

Solution 12 - Jenkins

I had just added a stage with a docker agent. Since I only had one node, master, I had to tell the container to reuse the node from the earlier stages:

  agent {
    docker {
        image 'bitnami/mongodb:latest'
        reuseNode true
    }
  }

You can vote to have this be the default behavior for agents and prevent this kind of lock.

Solution 13 - Jenkins

In case you have installed the Parameterized Trigger plugin, a job waiting in the build queue might be a known issue JENKINS-47792.

A workaround fix is to downgrade the Parameterized Trigger plugin to version 2.35.1. Note that you may be required to downgrade dependencies, such as the git plugin, as well.

Solution 14 - Jenkins

What worked for me: I finally noticed the Build Executor Status window on the left on the main Jenkins dashboard. I run a dev/test instance on my local system with 2 executors. Both were currently occupied with builds that were not running. Upon cancelling these to jobs, my third (pending) job was able to run.

Solution 15 - Jenkins

For me I have to restart the executors manually. Click on "Dead" under "Build Executor Status" and push the restart button.

Solution 16 - Jenkins

I ran into a similar problem because my master was set to " # of executor (The maximum number of concurrent builds that Jenkins may perform on this agent).

Go to Jenkins --> Manage Jenkins --> Manage Nodes, and click on the configure button of your master node (increase the number of executor to run mutiple jobs at a time).

Solution 17 - Jenkins

In my case I've to set Execute concurrent builds if necessary in job's General settings.

Solution 18 - Jenkins

You may have milestones set up and your job won't run until the previous job is complete.

Solution 19 - Jenkins

In my environment (images jenkins:lts-jdk11, jnlp-agent-maven e jnlp-agent-maven:jdk11), doing a pull for update jenkins image, reports no connectivity problem on agents. But all jobs stayed blocked with message:

pending—Waiting for next available executor on

So, the solution for me was stop and make a pull in both agents image:

docker pull jenkins/jnlp-agent-maven (jdk8)
docker pull jenkins/jnlp-agent-maven:jdk11

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionMichael EasterView Question on Stackoverflow
Solution 1 - JenkinsMichael EasterView Answer on Stackoverflow
Solution 2 - JenkinsPAVITRAView Answer on Stackoverflow
Solution 3 - JenkinseversMccView Answer on Stackoverflow
Solution 4 - Jenkinsuser3442998View Answer on Stackoverflow
Solution 5 - JenkinsFenixView Answer on Stackoverflow
Solution 6 - JenkinsCraig ThomasView Answer on Stackoverflow
Solution 7 - JenkinsNick ConstantineView Answer on Stackoverflow
Solution 8 - JenkinsClaudiuView Answer on Stackoverflow
Solution 9 - JenkinsmdabdullahView Answer on Stackoverflow
Solution 10 - JenkinsSiva Kumar Reddy GView Answer on Stackoverflow
Solution 11 - JenkinsLuis SolanoView Answer on Stackoverflow
Solution 12 - JenkinsNoumenonView Answer on Stackoverflow
Solution 13 - JenkinsJuuso OhtonenView Answer on Stackoverflow
Solution 14 - JenkinsBobby TaitView Answer on Stackoverflow
Solution 15 - JenkinsskwokieView Answer on Stackoverflow
Solution 16 - JenkinsSrikanth MukkuView Answer on Stackoverflow
Solution 17 - JenkinsOleg NeumyvakinView Answer on Stackoverflow
Solution 18 - JenkinsalbertskiView Answer on Stackoverflow
Solution 19 - JenkinsGilbertoView Answer on Stackoverflow