Fix more issues with the git_commits introduction

This commit is contained in:
Christopher Baines 2022-05-23 22:49:51 +01:00
parent 6d403cbc8d
commit d4bb0ffaaa
3 changed files with 17 additions and 9 deletions

View file

@ -1734,11 +1734,12 @@ SELECT
commit IN (
SELECT commit FROM (
SELECT DISTINCT ON (name)
name, git_branches.commit
name, git_commits.commit
FROM git_branches
INNER JOIN git_commits
ON git_commits.git_branch_id = git_branches.id
WHERE
git_branches.git_repository_id = load_new_guix_revision_jobs.git_repository_id AND
git_branches.commit IS NOT NULL
git_branches.git_repository_id = load_new_guix_revision_jobs.git_repository_id
ORDER BY name, datetime DESC
) branches_and_latest_commits
) AS latest_branch_commit
@ -1870,11 +1871,12 @@ SELECT
commit IN (
SELECT commit FROM (
SELECT DISTINCT ON (name)
name, git_branches.commit
name, git_commits.commit
FROM git_branches
INNER JOIN git_commits
ON git_commits.git_branch_id = git_branches.id
WHERE
git_branches.git_repository_id = load_new_guix_revision_jobs.git_repository_id AND
git_branches.commit IS NOT NULL
git_branches.git_repository_id = load_new_guix_revision_jobs.git_repository_id
ORDER BY name, datetime DESC
) branches_and_latest_commits
) AS latest_branch_commit

View file

@ -549,6 +549,8 @@ ORDER BY first_datetime DESC, package_version DESC")
WITH branches AS (
SELECT DISTINCT ON (git_repository_id, name) git_repository_id, name
FROM git_branches
INNER JOIN git_commits
ON git_commits.git_branch_id = git_branches.id
WHERE commit <> ''
ORDER BY git_repository_id, name, datetime DESC
)
@ -563,8 +565,10 @@ FROM branches
CROSS JOIN LATERAL (
SELECT guix_revisions.id
FROM git_branches
INNER JOIN git_commits
ON git_branches.id = git_commits.git_branch_id
INNER JOIN guix_revisions
ON git_branches.commit = guix_revisions.commit
ON git_commits.commit = guix_revisions.commit
INNER JOIN load_new_guix_revision_jobs
ON load_new_guix_revision_jobs.commit = guix_revisions.commit
INNER JOIN load_new_guix_revision_job_events

View file

@ -242,12 +242,14 @@ INNER JOIN (
) AS revision_packages ON packages.id = revision_packages.package_id
INNER JOIN guix_revisions
ON revision_packages.revision_id = guix_revisions.id
INNER JOIN git_commits
ON guix_revisions.commit = git_commits.commit
INNER JOIN git_branches
ON guix_revisions.commit = git_branches.commit
ON git_branches.id = git_commits.git_branch_id
WINDOW package_version AS (
PARTITION BY git_branches.git_repository_id, git_branches.name,
packages.name, packages.version, revision_packages.derivation_id
ORDER BY git_branches.datetime
ORDER BY git_commits.datetime
RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
)
ORDER BY packages.name, packages.version;