-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
Platform: All, OS: All
Hello,
I'd like to request for functionality which would allow to have actually running
build process to be interrupted and delayed when a new build with higher
priority is triggered and no free executors are available. Then later, after the
high priority build is completed the interrupted build would be resumed.
In case of multiple concurrently running builds the one with least priority
would be interrupted.
If there are running builds at the same priority then it doesn't matter much
which one would be interrupted, perhaps the one which has done least progress so
far so is in the earliest stage and thus has the most potential to block the
queue for a long time, but really whatever can do.
There may occur some cases such some build possible kept in interrupted state
forever (if there are lots of high priority ones coming), or perhaps some issues
when building dependent projects etc, but these should be sorted out (specifying
maximum interrupted time after which the build would be resumed on nearest
occassion etc).
Perhaps only the highest priority would have the right to interrupt anything
(except for builds with the same priorities)
It should further extend upon the build priorities proposals discussed here:
https://hudson.dev.java.net/issues/show_bug.cgi?id=833
http://www.nabble.com/Build-Priority-Status-tt21441976.html
It would allow the system resources to be utilized more effectively.
- depends on
-
JENKINS-2072 Make the Queue implementation replaceable
- Closed
- is blocking
-
JENKINS-8405 Optionally pause/cancel lower priority jobs in favor of higher priority jobs in the queue
- Open