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

From: Roel Janssen <[email-masked]>
Date: Thu, 21 Dec 2017 15:55:56 +0100

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.  So my idea is to
create a custom Guix package with valgrind in its inputs to let
guix-daemon build that.

Kind regards,
Roel Janssen