Improve the query in select-derivations-and-build-status
Fix handling derivations which target multiple systems (somehow?).
This commit is contained in:
parent
5d0dcea3e4
commit
5be4ebca0c
1 changed files with 18 additions and 17 deletions
|
|
@ -499,23 +499,24 @@ ORDER BY derivations.system DESC,
|
||||||
|
|
||||||
(define query
|
(define query
|
||||||
(string-append
|
(string-append
|
||||||
"SELECT derivations.file_name, derivations.system, ("
|
"
|
||||||
" SELECT DISTINCT package_derivations.target"
|
SELECT
|
||||||
" FROM package_derivations"
|
derivations.file_name,
|
||||||
" WHERE derivations.id = package_derivations.derivation_id"
|
derivations.system,
|
||||||
") AS target, "
|
package_derivations.target,
|
||||||
"latest_build_status.status "
|
latest_build_status.status
|
||||||
"FROM derivations "
|
FROM derivations
|
||||||
"INNER JOIN package_derivations"
|
INNER JOIN package_derivations
|
||||||
" ON derivations.id = package_derivations.derivation_id "
|
ON derivations.id = package_derivations.derivation_id
|
||||||
"LEFT OUTER JOIN builds ON derivations.id = builds.derivation_id "
|
LEFT OUTER JOIN builds
|
||||||
"LEFT OUTER JOIN "
|
ON derivations.id = builds.derivation_id
|
||||||
"(SELECT DISTINCT ON (internal_build_id) * "
|
LEFT OUTER JOIN (
|
||||||
"FROM build_status "
|
SELECT DISTINCT ON (internal_build_id) *
|
||||||
"ORDER BY internal_build_id, status_fetched_at DESC"
|
FROM build_status
|
||||||
") AS latest_build_status "
|
ORDER BY internal_build_id, status_fetched_at DESC
|
||||||
"ON builds.internal_id = latest_build_status.internal_build_id "
|
) AS latest_build_status
|
||||||
"WHERE " criteria ";"))
|
ON builds.internal_id = latest_build_status.internal_build_id
|
||||||
|
WHERE " criteria ";"))
|
||||||
|
|
||||||
(exec-query conn query))
|
(exec-query conn query))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue