Hi,

I’ve been having issues with the filesystem that holds /gnu/store
recently, causing corrupted/broken files. When trying to repair these
broken files with `guix gc --verify=repair,contents` it properly detects
that store items’ hashes do not match the ones recorded in the database
and redownloads/rebuilds them. However, the corrupted store items are
never actually repaired – not by `guix gc` and not by `guix build
--repair`. Attached is a testcase showing that deduplication is the
problem, because repairing will just hardlink the (broken) deduplicated
file instead of replacing it with the downloaded/built file. I tried the
daemon’s `--disable-deduplication` too with same results.

Cheers,
Lars

Attachment: testcase.sh
Description: Bourne shell script

/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10/bin/hello 
0jxnp4f4rac2scvq9lhcvpr4n4w0zrx5wdhcqml4w7zfybbszswp
-r-xr-xr-x 2 root root 0 19. Aug 13:54 
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10/bin/hello
reading the store...
checking path existence...
checking hashes...
path `/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10' was modified! 
expected hash 
`9c61184c4b1af09639cee8148bc0c3d7aced4a671615a6e0a3e7ccb927848ffa', got 
`3330b928ba2d3cf6acfdb0ef3a359fb686eac7ee6e9d49a6515ef7b1701537cf'
fetching path `/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10'...
Downloading 
https://ci.guix.gnu.org/nar/lzip/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10...
 hello-2.10  51KiB                    528KiB/s 00:00 [##################] 100.0%

-r-xr-xr-x 2 root root 0  1. Jan 1970  
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10/bin/hello
path `/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10' is corrupted or 
missing!
Substituiere /gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10 …
Lade von 
https://ci.guix.gnu.org/nar/lzip/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10 
herunter …
 hello-2.10  51KiB                                                              
     482KiB/s 00:00 [##################] 100.0%

/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10
-r-xr-xr-x 2 root root 0  1. Jan 1970  
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10/bin/hello
path `/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10' is corrupted or 
missing!
Substituiere /gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10 …
Lade von 
https://ci.guix.gnu.org/nar/lzip/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10 
herunter …
 hello-2.10  51KiB                                                              
     455KiB/s 00:00 [##################] 100.0%

/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10
-r-xr-xr-x 2 root root 37K  1. Jan 1970  
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10/bin/hello

Reply via email to