![]() |
|
|
|
|
Issue Type:
|
Bug
|
|
Assignee:
|
Unassigned |
|
Attachments:
|
deadlock.tdump |
|
Components:
|
core |
|
Created:
|
12/Jan/15 1:03 AM
|
|
Description:
|
When a node is removed (synchronized Jenkins.removeNode()), then eventually Computer.setNumExecutors() is called, attempting to lock the Queue. If, at the same time, a CloudRetentionStrategy.check() runs and determines that a node should be terminated, it locks the Queue before calling Jenkins.removeNode() and attempting to get a lock on the Jenkins object.
A thread dump (deadlock.tdump) is attached which shows the deadlock.
We're using DockerComputers that use the OnceRetentionStrategy, which means that nodes are removed every time a task completes, so the potential for this deadlock occurring is quite high (we experience it multiple times per day).
|
|
Environment:
|
Jenkins 1.598-SNAPSHOT (compiled from latest source code 6th Jan 2015), Docker plugin 0.8, Durable Task Plugin 1.1
|
|
Project:
|
Jenkins
|
|
Labels:
|
jenkins
deadlock
docker
|
|
Priority:
|
Critical
|
|
Reporter:
|
Bernie Schelberg
|
|
|
|
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira
|
--
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
[email protected].
For more options, visit
https://groups.google.com/d/optout.