summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames E. Blair <jeblair@hp.com>2015-02-18 09:23:36 -0800
committerJames E. Blair <jeblair@hp.com>2015-02-18 09:23:36 -0800
commitf8b42fbcc35919078339814ce0b2fb39adb138be (patch)
treeebaf1a4af25a81acf17a5aa3dee8e80e4f9fa879
parent848b6aca93aaef49d216a73d8b7f257f39476e9a (diff)
downloadzuul-f8b42fbcc35919078339814ce0b2fb39adb138be.tar.gz
Don't report on non-live changes dequeueing
If a non-live change was removed from the queue because one of its dependencies was removed, do not report on that change. The live change will eventually be removed for the same reason and it will report. Once is all that is needed. This should not normally happen, but we have seen it occur when dependencies have somehow changed behind zuul's back, possible because of an error in Gerrit. Change-Id: Ibb8daafb064e841606083d648b81389966d5333e
-rw-r--r--zuul/scheduler.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/zuul/scheduler.py b/zuul/scheduler.py
index 25f819263..131ad62c3 100644
--- a/zuul/scheduler.py
+++ b/zuul/scheduler.py
@@ -1365,10 +1365,11 @@ class BasePipelineManager(object):
self.cancelJobs(item)
self.dequeueItem(item)
self.pipeline.setDequeuedNeedingChange(item)
- try:
- self.reportItem(item)
- except MergeFailure:
- pass
+ if item.live:
+ try:
+ self.reportItem(item)
+ except MergeFailure:
+ pass
return (True, nnfi, ready_ahead)
dep_items = self.getFailingDependentItems(item)
actionable = change_queue.isActionable(item)