Move around some of the load new revision code
To better separate the code that needs to happen after a lock has been acquired to allow concurrently loading revisions without concurrent insertion issues.
This commit is contained in:
parent
2ea78cff47
commit
f2d28b4def
1 changed files with 68 additions and 67 deletions
|
|
@ -304,19 +304,9 @@
|
|||
(string<? a-name
|
||||
b-name)))))))
|
||||
|
||||
(define (inferior-guix->package-derivation-ids store conn inf)
|
||||
(let* ((packages (log-time "fetching inferior packages"
|
||||
(lambda ()
|
||||
(deduplicate-inferior-packages
|
||||
(inferior-packages inf)))))
|
||||
(inferior-data-4-tuples
|
||||
(log-time "getting inferior derivations"
|
||||
(lambda ()
|
||||
(all-inferior-package-derivations store inf packages)))))
|
||||
|
||||
(define loading-inferior-data
|
||||
(record-start-time "critical region fetching and loading inferior data"))
|
||||
|
||||
(define (packages-and-inferior-data->package-derivation-ids conn inf
|
||||
packages
|
||||
inferior-data-4-tuples)
|
||||
(let* ((package-license-set-ids
|
||||
(log-time "fetching inferior package license metadata"
|
||||
(lambda ()
|
||||
|
|
@ -362,9 +352,7 @@
|
|||
flat-package-ids-systems-and-targets
|
||||
derivation-ids)))
|
||||
|
||||
(record-end-time loading-inferior-data)
|
||||
|
||||
package-derivation-ids))))
|
||||
package-derivation-ids)))
|
||||
|
||||
(define (inferior-package-transitive-supported-systems package)
|
||||
((@@ (guix inferior) inferior-package-field)
|
||||
|
|
@ -538,8 +526,21 @@
|
|||
(catch
|
||||
#t
|
||||
(lambda ()
|
||||
(let* ((packages
|
||||
(log-time
|
||||
"fetching inferior packages"
|
||||
(lambda ()
|
||||
(deduplicate-inferior-packages
|
||||
(inferior-packages inf)))))
|
||||
(inferior-data-4-tuples
|
||||
(log-time
|
||||
"getting inferior derivations"
|
||||
(lambda ()
|
||||
(all-inferior-package-derivations store inf packages)))))
|
||||
|
||||
(let* ((package-derivation-ids
|
||||
(inferior-guix->package-derivation-ids store conn inf))
|
||||
(packages-and-inferior-data->package-derivation-ids
|
||||
conn inf packages inferior-data-4-tuples))
|
||||
(guix-revision-id
|
||||
(insert-guix-revision conn git-repository-id commit store-path)))
|
||||
|
||||
|
|
@ -549,7 +550,7 @@
|
|||
|
||||
(simple-format
|
||||
#t "Successfully loaded ~A package/derivation pairs\n"
|
||||
(length package-derivation-ids)))
|
||||
(length package-derivation-ids))))
|
||||
#t)
|
||||
(lambda (key . args)
|
||||
(simple-format (current-error-port)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue