Hello, Marius Bakke <mba...@fastmail.com> skribis:
> Rutger Helling <rhell...@mykolab.com> writes: > >> when building Guix with 'guix build guix' I keep running into a single >> test failure. I've attached the test-suite.log. > > Is this a Btrfs system by any chance, possibly on an SSD? > >> test-name: dead path can be explicitly collected >> location: >> /tmp/guix-build-guix-0.13.0-10.0b4c385.drv-0/source/tests/store.scm:178 >> source: >> + (test-assert >> + "dead path can be explicitly collected" >> + (let ((p (add-text-to-store >> + %store >> + "random-text" >> + (random-text) >> + '()))) >> + (let-values >> + (((paths freed) (delete-paths %store (list p)))) >> + (and (equal? paths (list p)) >> + (> freed 0) >> + (not (file-exists? p)))))) >> actual-value: #f >> result: FAIL > > I can reproduce this error on two different systems that have > Btrfs+LUKS+SSD, and the problem is that freed == 0. If you comment out (> freed 0), does the test pass? > I suspect it's related to Btrfs' "lazy" reporting of disk space, but > haven't dug very far. > > Until we figure out what's going on, I suggest applying the patch > below. Can you confirm that it works on your system? > > From bdc7b5310111e21801529ea57e290f6eb72ac6ed Mon Sep 17 00:00:00 2001 > From: Marius Bakke <mba...@fastmail.com> > Date: Tue, 21 Nov 2017 00:27:08 +0100 > Subject: [PATCH] gnu: guix: Disable test that fails on Btrfs. > > Works around <https://bugs.gnu.org/29363>. > Reported by Rutger Helling <rhell...@mykolab.com>. > > * gnu/packages/package-management.scm (guix)[arguments]: Rename > 'disable-container-tests' phase to 'disable-failing-tests' and add > substitution > to disable "dead path can be explicitly collected" test. Alternately, we could comment out (> freed 0) if that’s enough, with a comment explaining why, and do “make update-guix-package”. That way we’d avoid the extra build phase. WDYT? Thanks for finding out the root cause! Ludo’.