diff options
author | Christopher Baines <mail@cbaines.net> | 2022-05-23 19:10:25 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2022-05-23 19:10:25 +0100 |
commit | 64be52844e679d205d959ea06d50c44366c39097 (patch) | |
tree | ec33c03b2cb41bdd8b5159ecd230bdce07977cec /tests | |
parent | 89545caa3f8223db49f3e18dfecee0bc4094c0da (diff) | |
download | data-service-64be52844e679d205d959ea06d50c44366c39097.tar data-service-64be52844e679d205d959ea06d50c44366c39097.tar.gz |
Partition the package_derivations_by_guix_revision_range table
And create a proper git_branches table in the process.
I'm hoping this will help with slow deletions from the
package_derivations_by_guix_revision_range table in the case where there are
lots of branches, since it'll separate the data for one branch from another.
These migrations will remove the existing data, so
rebuild-package-derivations-table will currently need manually running to
regenerate it.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/model-git-branch.scm | 30 | ||||
-rw-r--r-- | tests/model-git-commit.scm | 52 |
2 files changed, 56 insertions, 26 deletions
diff --git a/tests/model-git-branch.scm b/tests/model-git-branch.scm index 46412bc..1bcc1c3 100644 --- a/tests/model-git-branch.scm +++ b/tests/model-git-branch.scm @@ -17,32 +17,10 @@ conn (lambda (conn) (let* ((url "test-url") - (id (git-repository-url->git-repository-id conn url))) - (insert-git-branch-entry conn - "master" - "test-commit" - id - (current-date))) - #t) - #:always-rollback? #t)) - - (test-assert "insert-git-branch-entry works twice" - (with-postgresql-transaction - conn - (lambda (conn) - (let* ((url "test-url") - (id (git-repository-url->git-repository-id conn url))) - (insert-git-branch-entry conn - "master" - "test-commit" - id - (current-date)) - (insert-git-branch-entry conn - "master" - "test-commit" - id - (current-date))) - #t) + (git-repository-id + (git-repository-url->git-repository-id conn url))) + (insert-git-branch-entry conn git-repository-id "master") + #t)) #:always-rollback? #t)))) (test-end) diff --git a/tests/model-git-commit.scm b/tests/model-git-commit.scm new file mode 100644 index 0000000..b8bc3d8 --- /dev/null +++ b/tests/model-git-commit.scm @@ -0,0 +1,52 @@ +(define-module (test-model-git-commit) + #:use-module (srfi srfi-19) + #:use-module (srfi srfi-64) + #:use-module (guix-data-service database) + #:use-module (guix-data-service model git-repository) + #:use-module (guix-data-service model git-branch) + #:use-module (guix-data-service model git-commit)) + +(test-begin "test-model-git-commit") + +(with-postgresql-connection + "test-module-git-commit" + (lambda (conn) + (check-test-database! conn) + + (test-assert "insert-git-commit-entry works" + (with-postgresql-transaction + conn + (lambda (conn) + (let* ((url "test-url") + (git-repository-id + (git-repository-url->git-repository-id conn url)) + (git-branch-id + (insert-git-branch-entry conn git-repository-id "master"))) + (insert-git-commit-entry conn + git-branch-id + "test-commit" + (current-date))) + #t) + #:always-rollback? #t)) + + (test-assert "insert-git-commit-entry works twice" + (with-postgresql-transaction + conn + (lambda (conn) + (let* ((url "test-url") + (git-repository-id + (git-repository-url->git-repository-id conn url)) + (git-branch-id + (insert-git-branch-entry conn git-repository-id "master"))) + (insert-git-commit-entry conn + git-branch-id + "test-commit" + (current-date)) + (insert-git-commit-entry conn + git-branch-id + "test-commit" + (current-date))) + #t) + #:always-rollback? #t)))) + +(test-end) |