gnu: bootstrap: Cache the 'bootstrap-executable' origins.
This reduces the number of lookups in the 'add-data-to-store' cache from 2705 to 2685 (hit rate: 10% to 9%) when running: GUIX_PROFILING=add-data-to-store-cache guix build libreoffice -nd * gnu/packages/bootstrap.scm (raw-build)[->store]: Use 'lower-object' instead of 'origin->derivation'. This allows the origin-to-derivation mapping to be cached.
This commit is contained in:
		
							parent
							
								
									5166d02730
								
							
						
					
					
						commit
						ac19950507
					
				
					 1 changed files with 3 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -33,6 +33,7 @@
 | 
			
		|||
  #:use-module ((guix derivations)
 | 
			
		||||
                #:select (derivation derivation-input derivation->output-path))
 | 
			
		||||
  #:use-module ((guix utils) #:select (gnu-triplet->nix-system))
 | 
			
		||||
  #:use-module ((guix gexp) #:select (lower-object))
 | 
			
		||||
  #:use-module (guix memoization)
 | 
			
		||||
  #:use-module (guix i18n)
 | 
			
		||||
  #:use-module (srfi srfi-1)
 | 
			
		||||
| 
						 | 
				
			
			@ -348,7 +349,7 @@ or false to signal an error."
 | 
			
		|||
                    #:allow-other-keys)
 | 
			
		||||
  (define (->store file)
 | 
			
		||||
    (run-with-store store
 | 
			
		||||
      (origin->derivation (bootstrap-executable file system)
 | 
			
		||||
      (lower-object (bootstrap-executable file system)
 | 
			
		||||
                    system)))
 | 
			
		||||
 | 
			
		||||
  (let* ((tar   (->store "tar"))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue