From 550e4b164829c3704e172a7c59a3e0215ec60697 Mon Sep 17 00:00:00 2001 From: Darius Makovsky Date: Mon, 9 Sep 2019 17:34:20 +0100 Subject: Return early from tracking queue if no result The tracking queue is the only queue implementing `done()` which requires the result to be iterable. If there is no result from the job this will hit a TypeError. --- src/buildstream/_scheduler/queues/trackqueue.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/buildstream/_scheduler/queues/trackqueue.py b/src/buildstream/_scheduler/queues/trackqueue.py index 6bdf838f9..ea0df09ca 100644 --- a/src/buildstream/_scheduler/queues/trackqueue.py +++ b/src/buildstream/_scheduler/queues/trackqueue.py @@ -50,7 +50,7 @@ class TrackQueue(Queue): def done(self, _, element, result, status): - if status is JobStatus.FAIL: + if status is JobStatus.FAIL or not result: return # Set the new refs in the main process one by one as they complete, -- cgit v1.2.1