On Tue, 22 Jun 2021, Ricardo Wurmus wrote:

Jack Hill <jackh...@jackhill.us> writes:

What happens if you try “guix build --check --no-grafts /gnu/store/zkhymfsbrv0s4y7l778g78k6y65nidxd-gnutls-3.6.16.drv” or similar? The database probably states that /gnu/store/jlk67v3nddhv0z963wfvahk8fc8gqcz8-gnutls-3.6.16 has already been built, so with “--check” you might be able to make it build it again.

`guix gc --verify=repair` fixed the problem, so I won't be able to test this (unless this recurs, but I hope it doesn't).

So Guix think's it's sucessfully built gnutls, but it's still not
present in the store. I've also tried copying the store items from
other hosts. No luck so far…

How did that fail?

I didn't capture verbose output, but I believe nothing was sent because the problematic host reported it already had that item.

How could the directory have disappeared? Guix appears to be very surprised that the directory is missing.

Apologies for leaving out more details about this host earlier. The filesystem is btrfs and its a virtual machine running in someone else's VM cluster. I had to reset and boot into older generations a few times before I noticed the problem because of a misconfiguration I made. Some of these older generation involved downgrading the kernel from 5.12 to 5.11. I suppose that could have caused file system corruption, although I would not have expected the store to be written to at the time of the resets.

Best,
Jack

Reply via email to