Subject: bug#29676: Guix test failure on tests/store.

From: [email-masked] (Ludovic Courtès)
Date: Thu, 21 Dec 2017 16:01:21 +0100

Roel Janssen <[email-masked]> skribis:

> Ludovic Courtès writes:
>
>> Hi Roel,
>>
>> [email-masked] (Ludovic Courtès) skribis:
>>
>>> Roel Janssen <[email-masked]> skribis:
>>
>> [...]
>>
>>>>>> actual-error:
>>>>>> + (srfi-34
>>>>>> +   #<condition &nix-protocol-error [message: "path `dtmp/guix-tests/store/462z3fnl7bs44vp9s97jyg1z74nsfvly-tar' is not in the Nix store" status: 1] 1071090>)
>>>>>> result: FAIL
>>>>>
>>>>> The “dtmp” bit (instead of “/tmp”) looks fishy and would suggest a
>>>>> memory corruption, presumably in the daemon.
>>>>
>>>> The daemon used in the test, or the daemon used to do the package build?
>>>
>>> The daemon under test (within the build environment).
>>>
>>>>> I suppose the failure random, isn’t it?
>>>>
>>>> I ran it again, and I've got the same error:
>>>>
>>>> actual-error:
>>>> + (srfi-34
>>>> +   #<condition &nix-protocol-error [message: "path `dtmp/guix-tests/store/462z3fnl7bs44vp9s97jyg1z74nsfvly-tar' is not in the Nix store" status: 1] 1754ed0>)
>>>>
>>>> So that's either a very funny coincidence, or it's a structural problem.
>>>
>>> It’s better if it’s not random.  :-)
>>>
>>>> Do you have any suggestions for how I can debug this problem?
>>>
>>> Assuming the failure also happens when you run “make check” outside the
>>> build container (in the failed build tree), can you add ‘valgrind’ in
>>> ‘test-env’?  Specifically, in ‘test-env’, look for the line that invokes
>>> ‘./pre-inst-env guix-daemon’ and change it to ‘./pre-inst-env valgrind
>>> guix-daemon’.
>>
>> Did you manage to gather more info?
>
> No.  When I run "make check -k" many tests fail.

In a fresh checkout?  If many tests fail, then there’s probably
something wrong with the environment, such as guix-daemon failing to
start or something.  Could you check the logs?

Thanks,
Ludo’.