aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-04-29 18:02:30 +0100
committerChristopher Baines <mail@cbaines.net>2020-04-29 18:02:30 +0100
commit421791cf5250897d69ef0b1c04a47b900cf5ea7e (patch)
tree53fc1ff6d7895095ff95ff69d1731a17856f3a33
parent5f01bb9edaac3649998c90fe400f4cd98c668d95 (diff)
downloadbuild-coordinator-421791cf5250897d69ef0b1c04a47b900cf5ea7e.tar
build-coordinator-421791cf5250897d69ef0b1c04a47b900cf5ea7e.tar.gz
Switch around which order to join build_results on
This order seems to result in a better query plan, avoiding scanning the entire builds table.
-rw-r--r--guix-build-coordinator/datastore/sqlite.scm4
1 files changed, 2 insertions, 2 deletions
diff --git a/guix-build-coordinator/datastore/sqlite.scm b/guix-build-coordinator/datastore/sqlite.scm
index 7906081..e4a5aab 100644
--- a/guix-build-coordinator/datastore/sqlite.scm
+++ b/guix-build-coordinator/datastore/sqlite.scm
@@ -601,10 +601,10 @@ WHERE build_id = :build_id")))
"
SELECT uuid, builds.derivation_name, priority, processed, result
FROM builds
-LEFT JOIN build_results
- ON builds.uuid = build_results.build_id
INNER JOIN derivation_outputs
ON builds.derivation_name = derivation_outputs.derivation_name
+LEFT JOIN build_results
+ ON builds.uuid = build_results.build_id
WHERE derivation_outputs.output = :output")))
(sqlite-bind-arguments