diff --git a/guix-data-service/data-deletion.scm b/guix-data-service/data-deletion.scm index 35ea4dc..243dcbc 100644 --- a/guix-data-service/data-deletion.scm +++ b/guix-data-service/data-deletion.scm @@ -561,10 +561,6 @@ WHERE NOT EXISTS ( (with-postgresql-transaction conn (lambda (conn) - (obtain-advisory-transaction-lock - conn - 'delete-unreferenced-derivations) - (exec-query conn " @@ -585,6 +581,10 @@ SET CONSTRAINTS derivations_by_output_details_set_derivation_id_fkey DEFERRED") (lambda () (with-thread-postgresql-connection (lambda (conn) + (obtain-advisory-transaction-lock + conn + 'delete-unreferenced-derivations) + (let loop ((total-deleted 0)) (let ((batch-deleted-count (delete-batch conn))) (if (eq? 0 batch-deleted-count)