Stop using package_versions_by_guix_revision_range
It's been replaced by the package_derivations_by_guix_revision_range table.
This commit is contained in:
parent
102f7a0536
commit
ca0d3ee754
7 changed files with 23 additions and 77 deletions
|
|
@ -66,8 +66,7 @@ WHERE branch_name = $1 AND git_repository_id = $2"
|
||||||
table)
|
table)
|
||||||
(list branch-name
|
(list branch-name
|
||||||
(number->string git-repository-id))))
|
(number->string git-repository-id))))
|
||||||
'("package_versions_by_guix_revision_range"
|
'("package_derivations_by_guix_revision_range"))
|
||||||
"package_derivations_by_guix_revision_range"))
|
|
||||||
|
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (table)
|
(lambda (table)
|
||||||
|
|
|
||||||
|
|
@ -1154,68 +1154,6 @@ WHERE job_id = $1"
|
||||||
|
|
||||||
(prevent-inlining-for-tests extract-information-from)
|
(prevent-inlining-for-tests extract-information-from)
|
||||||
|
|
||||||
(define (update-package-versions-table conn git-repository-id commit)
|
|
||||||
(with-time-logging "lock table: package_versions_by_guix_revision_range"
|
|
||||||
;; Lock the table to wait for other transactions to commit before updating
|
|
||||||
;; the table
|
|
||||||
(exec-query
|
|
||||||
conn
|
|
||||||
"
|
|
||||||
LOCK TABLE ONLY package_versions_by_guix_revision_range
|
|
||||||
IN SHARE ROW EXCLUSIVE MODE"))
|
|
||||||
|
|
||||||
(for-each
|
|
||||||
(match-lambda
|
|
||||||
((branch-name)
|
|
||||||
(with-time-logging
|
|
||||||
(simple-format #f "deleting package version entries for ~A" branch-name)
|
|
||||||
(exec-query
|
|
||||||
conn
|
|
||||||
"
|
|
||||||
DELETE FROM package_versions_by_guix_revision_range
|
|
||||||
WHERE git_repository_id = $1 AND branch_name = $2"
|
|
||||||
(list git-repository-id
|
|
||||||
branch-name)))
|
|
||||||
(with-time-logging
|
|
||||||
(simple-format #f "inserting package version entries for ~A" branch-name)
|
|
||||||
(exec-query
|
|
||||||
conn
|
|
||||||
"
|
|
||||||
INSERT INTO package_versions_by_guix_revision_range
|
|
||||||
SELECT DISTINCT
|
|
||||||
$1::integer AS git_repository_id,
|
|
||||||
$2 AS branch_name,
|
|
||||||
packages.name AS package_name,
|
|
||||||
packages.version AS package_version,
|
|
||||||
first_value(guix_revisions.id)
|
|
||||||
OVER package_version AS first_guix_revision_id,
|
|
||||||
last_value(guix_revisions.id)
|
|
||||||
OVER package_version AS last_guix_revision_id
|
|
||||||
FROM packages
|
|
||||||
INNER JOIN (
|
|
||||||
SELECT DISTINCT package_derivations.package_id,
|
|
||||||
guix_revision_package_derivations.revision_id
|
|
||||||
FROM package_derivations
|
|
||||||
INNER JOIN guix_revision_package_derivations
|
|
||||||
ON package_derivations.id = guix_revision_package_derivations.package_derivation_id
|
|
||||||
) 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_branches ON guix_revisions.commit = git_branches.commit
|
|
||||||
WHERE git_branches.name = $2
|
|
||||||
WINDOW package_version AS (
|
|
||||||
PARTITION BY packages.name, packages.version
|
|
||||||
ORDER BY git_branches.datetime
|
|
||||||
RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
|
|
||||||
)
|
|
||||||
ORDER BY packages.name, packages.version"
|
|
||||||
(list git-repository-id branch-name)))))
|
|
||||||
(exec-query
|
|
||||||
conn
|
|
||||||
"SELECT name FROM git_branches WHERE commit = $1 AND git_repository_id = $2"
|
|
||||||
(list commit git-repository-id)))
|
|
||||||
|
|
||||||
#t)
|
|
||||||
|
|
||||||
(define (load-new-guix-revision conn store git-repository-id commit)
|
(define (load-new-guix-revision conn store git-repository-id commit)
|
||||||
(let* ((channel-for-commit
|
(let* ((channel-for-commit
|
||||||
(channel (name 'guix)
|
(channel (name 'guix)
|
||||||
|
|
@ -1262,7 +1200,6 @@ ORDER BY packages.name, packages.version"
|
||||||
(simple-format #t "debug: importing channel news not supported\n")
|
(simple-format #t "debug: importing channel news not supported\n")
|
||||||
#t))
|
#t))
|
||||||
|
|
||||||
(update-package-versions-table conn git-repository-id commit)
|
|
||||||
(update-package-derivations-table conn
|
(update-package-derivations-table conn
|
||||||
git-repository-id
|
git-repository-id
|
||||||
guix-revision-id
|
guix-revision-id
|
||||||
|
|
|
||||||
|
|
@ -175,18 +175,6 @@ EOF
|
||||||
|
|
||||||
psql -v ON_ERROR_STOP=1 --echo-queries --no-psqlrc "$URI_FOR_DATABASE" -U guix_data_service <<EOF &
|
psql -v ON_ERROR_STOP=1 --echo-queries --no-psqlrc "$URI_FOR_DATABASE" -U guix_data_service <<EOF &
|
||||||
|
|
||||||
WITH guix_revision_ids AS (
|
|
||||||
SELECT id FROM guix_revisions WHERE commit IN (
|
|
||||||
SELECT commit FROM git_branches
|
|
||||||
)
|
|
||||||
)
|
|
||||||
DELETE FROM package_versions_by_guix_revision_range
|
|
||||||
WHERE first_guix_revision_id NOT IN (SELECT id FROM guix_revision_ids) OR
|
|
||||||
last_guix_revision_id NOT IN (SELECT id FROM guix_revision_ids);
|
|
||||||
EOF
|
|
||||||
|
|
||||||
psql -v ON_ERROR_STOP=1 --echo-queries --no-psqlrc "$URI_FOR_DATABASE" -U guix_data_service <<EOF &
|
|
||||||
|
|
||||||
WITH guix_revision_ids AS (
|
WITH guix_revision_ids AS (
|
||||||
SELECT id FROM guix_revisions WHERE commit IN (
|
SELECT id FROM guix_revisions WHERE commit IN (
|
||||||
SELECT commit FROM git_branches
|
SELECT commit FROM git_branches
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
-- Deploy guix-data-service:drop_package_versions_by_guix_revision_range to pg
|
||||||
|
|
||||||
|
BEGIN;
|
||||||
|
|
||||||
|
DROP TABLE package_versions_by_guix_revision_range;
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
-- Revert guix-data-service:drop_package_versions_by_guix_revision_range from pg
|
||||||
|
|
||||||
|
BEGIN;
|
||||||
|
|
||||||
|
-- XXX Add DDLs here.
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
|
|
@ -53,3 +53,4 @@ channel_instance_derivations 2020-02-10T07:59:03Z Christopher Baines <mail@cbain
|
||||||
update_build_servers_build_config 2020-02-13T20:07:19Z Christopher Baines <mail@cbaines.net> # Update build_servers_build_config values
|
update_build_servers_build_config 2020-02-13T20:07:19Z Christopher Baines <mail@cbaines.net> # Update build_servers_build_config values
|
||||||
make_some_constraints_deferrable 2020-02-16T10:54:22Z Christopher Baines <mail@cbaines.net> # Make some constraints deferrable
|
make_some_constraints_deferrable 2020-02-16T10:54:22Z Christopher Baines <mail@cbaines.net> # Make some constraints deferrable
|
||||||
guix_revision_system_test_derivations_add_system 2020-03-19T21:30:33Z Christopher Baines <mail@cbaines.net> # Add a system column to the guix_revision_system_test_derivations table
|
guix_revision_system_test_derivations_add_system 2020-03-19T21:30:33Z Christopher Baines <mail@cbaines.net> # Add a system column to the guix_revision_system_test_derivations table
|
||||||
|
drop_package_versions_by_guix_revision_range 2020-03-24T20:40:38Z Christopher Baines <mail@cbaines.net> # Drop package_versions_by_guix_revision_range
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
-- Verify guix-data-service:drop_package_versions_by_guix_revision_range on pg
|
||||||
|
|
||||||
|
BEGIN;
|
||||||
|
|
||||||
|
-- XXX Add verifications here.
|
||||||
|
|
||||||
|
ROLLBACK;
|
||||||
Loading…
Add table
Add a link
Reference in a new issue