-
Bug
-
Resolution: Fixed
-
Major
-
Jenkins 1.609.2
matrix project 1.6 (and others?)
-
Powered by SuggestiMate
When a flyweighttask is limited to run on a specific label (e.g. matrix project set restrict where this project can run) if there are no nodes with that label available when it enters the queue then it will immediatly move to blocked.
As it is blocked the Node provisioner will not attempt to create any slaves, so the project will sit in the queue forever (or until some other project allocates a slave with the correct label).
Seems to be a regression introduced by JENKINS-24519
- is related to
-
JENKINS-24519 Flyweight tasks only use one-off executor when they can be scheduled immediately
-
- Resolved
-
- links to
[JENKINS-30084] FlyWeightTasks tied to a label will not cause node provisioning and will be blocked forever.
Code changed in jenkins
User: Valentina Armenise
Path:
core/src/main/java/hudson/model/Queue.java
http://jenkins-ci.org/commit/jenkins/7ea21bbf2cfb11a707702034e0fad2ee09bdcc02
Log:
JENKINS-30084 indent back
Code changed in jenkins
User: Valentina Armenise
Path:
core/src/main/java/hudson/model/Queue.java
test/src/test/java/hudson/model/QueueTest.java
http://jenkins-ci.org/commit/jenkins/8d113a10678ee172ce4e4987867088de5e510991
Log:
JENKINS-30084 address feedbacks
Code changed in jenkins
User: Valentina Armenise
Path:
core/src/main/java/hudson/model/Queue.java
http://jenkins-ci.org/commit/jenkins/a42f1812e8b1948ddca763e4623cf04f207ee005
Log:
JENKINS-30084 remove extra space
Code changed in jenkins
User: Stephen Connolly
Path:
core/src/main/java/hudson/model/Queue.java
test/src/test/java/hudson/model/QueueTest.java
test/src/test/java/hudson/slaves/DummyCloudImpl.java
http://jenkins-ci.org/commit/jenkins/5a5f9c5d10f04cf47e37829979dfb2f4e57972af
Log:
Merge pull request #1815 from varmenise/OSS-192
[FIXED JENKINS-30084] FlyWeightTasks tied to a label will not cause node provisioning and will be blocked forever.
When a flyweighttask is limited to run on a specific label (e.g. matrix project set restrict where this project can run) if there are no nodes with that label available when it enters the queue then it will immediately move to blocked.
As it is blocked the Node provisioner will not attempt to create any slaves, so the project will sit in the queue forever (or until some other project allocates a slave with the correct label).
Compare: https://github.com/jenkinsci/jenkins/compare/41b8294394bf...5a5f9c5d10f0
Code changed in jenkins
User: Stephen Connolly
Path:
changelog.html
http://jenkins-ci.org/commit/jenkins/ba93862659b25a574446bcb45def0718214ba1a3
Log:
Noting JENKINS-30084 in changelog
Integrated in jenkins_main_trunk #4297
JENKINS-30084 flyweight tasks gets added to the buildable list when no executor is available (Revision 8cd99cac90b180a3e84d17c56c5fb1f11744f263)
JENKINS-30084 fix indentation (Revision cb6f2b2c713beb483800ab9585a775878a89ccb5)
JENKINS-30084 updateSnapshot (Revision ca4668f5a2820b76673aebfe283f14b0cfb5e72d)
JENKINS-30084 check on null (Revision 505f492e29a0972cde8f50059f743a2d737f2047)
JENKINS-30084 added test case (Revision a5a2c45d2e787e5456b27f0162b6253540f4ec2e)
JENKINS-30084 added comments to QueueListener (Revision c923001025ecbf9d027d7a3d629e043bee72ee5a)
JENKINS-30084 updated references of Jenkins Issue (Revision 750cdb64bf7115c225714eb19d9676817d0f1b23)
JENKINS-30084 we do not need a new flyweight tasks list: lighter and cleaner approach (Revision 88443b08c17c4d0e6609eb7b1f6f66146fc37e20)
JENKINS-30084 new location and implementation of the test (Revision 53f909620dff65616a364092d35198b7ca4a8b7f)
JENKINS-30084 new comment for test (Revision 9a24957247ea1a403ba4a108d005e421390382b9)
JENKINS-30084 cleanup (Revision 50ae0f4da9d7445a6d9da11dd5615ef4c1d6c315)
JENKINS-30084 cleanup (Revision 1d731693fbd5b2806bdac30fd4a9e1c00abd31ab)
JENKINS-30084 cleanup (Revision cfef72b1b2487ba86d07f66e30dc98651d666a9e)
JENKINS-30084 cleanup (Revision a19c7936bf00a43d2c8707fca8b9dd32341d550e)
JENKINS-30084 a flyweight task can be blocked by shutdown and if so should go in the blocked list (Revision 2934f4502001fa2d2182a4482686e547f44890c4)
JENKINS-30084 a flyweight task can be blocked by shutdown and if so should go in the blocked list (Revision e1c197c08feda0cfa0118df100ef36a118d4a15a)
JENKINS-30084 more comments (Revision fced6f987e79e2e0192a5e90e28d96c8c8991167)
JENKINS-30084 method renamed and added check on field type (Revision 319382919c3cb67d0ced318b8b8aa8ee3e1b205d)
JENKINS-30084 some stylish changes (Revision e1904e02d45bf2407d6fb4513a5f37fed9a13268)
JENKINS-30084 extract inline class (Revision eb52333df6a78d3cd79898edd7599753ba11d5bb)
JENKINS-30084 some more polish (Revision 65d1fe5b1d17650f9f5cad97e28b5528d616a468)
JENKINS-30084 fix regression when flyweight task is blocked by upstream/downstream project (Revision 61a1f6c1fae28ca37e4352eb4940bed567b8e14a)
JENKINS-30084 test added to make sure a flyweight task can be blocked at last minute (Revision e33f3f62db662487707f24d5b2356fac446166a9)
JENKINS-30084 enhancing test case (Revision 3b4c09e4e93b361e93c93f33609e752b4ab8ab5d)
JENKINS-30084 fixing test (Revision 562c0e5f0013aa4dfc829443d9bf22b9fd7f2749)
JENKINS-30084 fixing test (Revision 37a372d15442c0ff7e018f29ca135c718f9d4b61)
JENKINS-30084 indent back (Revision 7ea21bbf2cfb11a707702034e0fad2ee09bdcc02)
JENKINS-30084 address feedbacks (Revision 8d113a10678ee172ce4e4987867088de5e510991)
JENKINS-30084 remove extra space (Revision a42f1812e8b1948ddca763e4623cf04f207ee005)
Result = UNSTABLE
valentina.armenise : 8cd99cac90b180a3e84d17c56c5fb1f11744f263
Files :
- core/src/main/java/hudson/model/Queue.java
- core/src/main/java/hudson/model/queue/QueueListener.java
valentina.armenise : cb6f2b2c713beb483800ab9585a775878a89ccb5
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : ca4668f5a2820b76673aebfe283f14b0cfb5e72d
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : 505f492e29a0972cde8f50059f743a2d737f2047
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : a5a2c45d2e787e5456b27f0162b6253540f4ec2e
Files :
- test/src/test/java/hudson/model/queue/WideExecutionTest.java
valentina.armenise : c923001025ecbf9d027d7a3d629e043bee72ee5a
Files :
- core/src/main/java/hudson/model/queue/QueueListener.java
valentina.armenise : 750cdb64bf7115c225714eb19d9676817d0f1b23
Files :
- core/src/main/java/hudson/model/Queue.java
- test/src/test/java/hudson/model/queue/WideExecutionTest.java
valentina.armenise : 88443b08c17c4d0e6609eb7b1f6f66146fc37e20
Files :
- core/src/main/java/hudson/model/Queue.java
- core/src/main/java/hudson/model/queue/QueueListener.java
valentina.armenise : 53f909620dff65616a364092d35198b7ca4a8b7f
Files :
- test/src/test/java/hudson/model/QueueTest.java
- test/src/test/java/hudson/model/queue/WideExecutionTest.java
valentina.armenise : 9a24957247ea1a403ba4a108d005e421390382b9
Files :
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 50ae0f4da9d7445a6d9da11dd5615ef4c1d6c315
Files :
- test/src/test/java/hudson/model/queue/WideExecutionTest.java
valentina.armenise : 1d731693fbd5b2806bdac30fd4a9e1c00abd31ab
Files :
- core/src/main/java/hudson/model/queue/QueueListener.java
valentina.armenise : cfef72b1b2487ba86d07f66e30dc98651d666a9e
Files :
- test/src/test/java/hudson/model/queue/WideExecutionTest.java
valentina.armenise : a19c7936bf00a43d2c8707fca8b9dd32341d550e
Files :
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 2934f4502001fa2d2182a4482686e547f44890c4
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : e1c197c08feda0cfa0118df100ef36a118d4a15a
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : fced6f987e79e2e0192a5e90e28d96c8c8991167
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : 319382919c3cb67d0ced318b8b8aa8ee3e1b205d
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : e1904e02d45bf2407d6fb4513a5f37fed9a13268
Files :
- core/src/main/java/hudson/model/Queue.java
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : eb52333df6a78d3cd79898edd7599753ba11d5bb
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : 65d1fe5b1d17650f9f5cad97e28b5528d616a468
Files :
- core/src/main/java/hudson/model/Queue.java
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 61a1f6c1fae28ca37e4352eb4940bed567b8e14a
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : e33f3f62db662487707f24d5b2356fac446166a9
Files :
- test/src/test/java/hudson/model/QueueTest.java
- test/src/test/java/hudson/slaves/DummyCloudImpl.java
valentina.armenise : 3b4c09e4e93b361e93c93f33609e752b4ab8ab5d
Files :
- core/src/main/java/hudson/model/Queue.java
- test/src/test/java/hudson/slaves/DummyCloudImpl.java
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 562c0e5f0013aa4dfc829443d9bf22b9fd7f2749
Files :
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 37a372d15442c0ff7e018f29ca135c718f9d4b61
Files :
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : 7ea21bbf2cfb11a707702034e0fad2ee09bdcc02
Files :
- core/src/main/java/hudson/model/Queue.java
valentina.armenise : 8d113a10678ee172ce4e4987867088de5e510991
Files :
- core/src/main/java/hudson/model/Queue.java
- test/src/test/java/hudson/model/QueueTest.java
valentina.armenise : a42f1812e8b1948ddca763e4623cf04f207ee005
Files :
- core/src/main/java/hudson/model/Queue.java
Code changed in jenkins
User: tfennelly
Path:
changelog.html
core/src/main/java/hudson/Util.java
core/src/main/java/hudson/console/ConsoleLogFilter.java
core/src/main/java/hudson/model/Label.java
core/src/main/java/hudson/model/Queue.java
core/src/main/java/hudson/model/Run.java
core/src/main/java/hudson/slaves/SlaveComputer.java
core/src/main/java/hudson/tasks/BuildWrappers.java
core/src/main/java/jenkins/triggers/ReverseBuildTrigger.java
core/src/main/resources/lib/layout/task.jelly
core/src/test/java/hudson/FilePathTest.java
core/src/test/java/hudson/LauncherTest.java
core/src/test/java/hudson/util/IsOverriddenTest.java
core/src/test/java/hudson/util/ProcessTreeTest.java
test/src/test/groovy/hudson/model/AbstractProjectTest.groovy
test/src/test/groovy/jenkins/model/PeepholePermalinkTest.groovy
test/src/test/java/hudson/console/ConsoleLogFilterTest.java
test/src/test/java/hudson/model/DirectoryBrowserSupportTest.java
test/src/test/java/hudson/model/NodeTest.java
test/src/test/java/hudson/model/QueueTest.java
test/src/test/java/hudson/slaves/DummyCloudImpl.java
test/src/test/java/hudson/slaves/JNLPLauncherTest.java
test/src/test/java/hudson/tasks/EnvVarsInConfigTasksTest.java
test/src/test/java/hudson/tasks/ShellTest.java
test/src/test/java/hudson/tools/JDKInstallerTest.java
test/src/test/java/hudson/util/ProcessTreeKillerTest.java
test/src/test/java/jenkins/triggers/ReverseBuildTriggerTest.java
http://jenkins-ci.org/commit/jenkins/955eb7274a02e3549493cd2e1e0de785a0893784
Log:
Merge branch 'master' into plugin-manager-dependants
- master: (58 commits)
Changelog: Replace the PR reference by the JIRA issue reference
Noting https://github.com/jenkinsci/jenkins/pull/1818
Noting https://github.com/jenkinsci/jenkins/pull/1804
JENKINS-30002Improve Util.isOverridden
Noting #1842
[FIXED JENKINS-30777] this concludes the fix
JENKINS-30777 also allow slaves to decorate logger
JENKINS-30777 Generalized the signature to work with Run, not just AbstractBuild.
Diamond operator
[FIXED JENKINS-29876] CheckForNull job in ReverseBuildTrigger
NotingJENKINS-30084in changelog
JENKINS-30084remove extra space
JENKINS-30084address feedbacks
JENKINS-30084indent back
JENKINS-30084fixing test
JENKINS-30084fixing test
JENKINS-30084enhancing test case
JENKINS-30084test added to make sure a flyweight task can be blocked at last minute
JENKINS-30084fix regression when flyweight task is blocked by upstream/downstream project
JENKINS-30084some more polish
...
Code changed in jenkins
User: Stephen Connolly
Path:
core/src/main/java/hudson/model/Queue.java
test/src/test/java/hudson/model/QueueTest.java
test/src/test/java/hudson/slaves/DummyCloudImpl.java
http://jenkins-ci.org/commit/jenkins/f07b3b7efc252be7e84dc2f0042bf8a5a45e99b6
Log:
Merge pull request #1815 from varmenise/OSS-192
[FIXED JENKINS-30084] FlyWeightTasks tied to a label will not cause node provisioning and will be blocked forever.
When a flyweighttask is limited to run on a specific label (e.g. matrix project set restrict where this project can run) if there are no nodes with that label available when it enters the queue then it will immediately move to blocked.
As it is blocked the Node provisioner will not attempt to create any slaves, so the project will sit in the queue forever (or until some other project allocates a slave with the correct label).
(cherry picked from commit 5a5f9c5d10f04cf47e37829979dfb2f4e57972af)
Compare: https://github.com/jenkinsci/jenkins/compare/16c30cdc4c79...f07b3b7efc25
Code changed in jenkins
User: Jesse Glick
Path:
test/src/test/java/hudson/model/QueueTest.java
http://jenkins-ci.org/commit/jenkins/860d9c54850237303662bd9bddff5545b93b93a7
Log:
Merge pull request #3070 from jglick/QueueTest.shouldBeAbleToBlockFlyweightTaskAtTheLastMinute
JENKINS-30084 Suppressing flaky QueueTest.shouldBeAbleToBlockFlyweightTaskAtTheLastMinute
Compare: https://github.com/jenkinsci/jenkins/compare/d50dc367f5fe...860d9c548502
Code changed in jenkins
User: Valentina Armenise
Path:
test/src/test/java/hudson/model/QueueTest.java
http://jenkins-ci.org/commit/jenkins/37a372d15442c0ff7e018f29ca135c718f9d4b61
Log:
JENKINS-30084fixing test